Matti Maekitalo: Funktion ausfuehren, deren Namen nur als Skalar bekannt

Beitrag lesen

use Mosche;

<quote von http://perlbase.xwolf.de/cgi-bin/perlbase.cgi?dis.7.3.3>
Aufruf einer in einem hash definierten Funktion:

vorherige Prüfung ob die Funktion definiert ist

if(exists $function{'funktionsname'}){
    $function{'funktionsname'}(@parameterliste);
}
</quote>

Wenn man wirklich prüfen will, sollte man das anders machen:

sub is_sub {
   my $ref = shift;
   return defined $ref && ref($ref) eq 'CODE';
}

if (is_sub($function{'funktionsname'})) {
    $function{'funktionsname'}(@parameterliste);
}

Im Übrigen finde ich die Art, eine Lösungsmöglichkeit ein drittes Mal zu posten, irgendwie aufdringlich. Aber nur IMHO.

use Tschoe qw(Matti);

--
  Anyone who quotes me in their sig is an idiot. -- Rusty Russell.