[bcn-pm] Getopt::Long i funcions per una mateixa opció

Arnau Bria listsarnau a gmail.com
dll feb 6 06:01:18 PST 2012


On Mon, 6 Feb 2012 12:34:38 +0100
Arnau Bria wrote:

[...]

> i my %opt = ( 'list'      => {
        postinstall     => list_postinstall(),
        distros         => list_distros(),
        },
        );ho acabo cridant com:
> GetOptions ('list=s' => sub {$opt{$_[0]}->($_[1])->($_[2])});

Rectifico, això no funciona... M'he confós perquè m'executa les dues
funcions sempre. I no estava molt pendent de estudiar l'output...

no aconsegueixo cridar a la funció que defineixo dintre del hash.

Per tant he acabant fent un cutre "case" dintre del sub:

GetOptions ('list=s' =>  sub { for ($opt{$_[0]}{$_[1]}) {
                                /postinstall/ and do
{list_postinstall(); last; }; /distro/        and do {list_distros();
last;}; } 
                        }); 
Que si funciona.

salut!
Arnau


PS: perdó al admin de la llista. He enviat dos mails amb l'adreça
incorrecte...


Més informació sobre la llista de correu Barcelona-pm