[Dresden-pm] Problem mit Moduleinbindung
Steffen Winkler
steffen.winkler at gmx.net
Mi Aug 15 00:33:28 PDT 2007
Warum macht ihr immer nur string eval und verlangt, daß der Interpreter zurück zum Compiler schaltet und dann wieder zurück zum Interpreter. Das ist Horror. Warum nehmt Ihr nicht nicht block eval.
eval {was hier drin died bricht nur den eval ab};
Hatte ich das nicht eindeutig geschrieben, daß man das nicht braucht. Bei require kann man den Modulename auch als Variable
require $var;
angeben. Klassen- oder Modulenamen sind sowieso strings, und Methodennamen können auch variablen sein.
$class->$method();
use Carp qw(croak);
eval {require $myModul};
croak $@ if $@; # verwende immer croak anstatt von die
if(my $coderef = UNIVERSAL->can($myModul, $mysub)){
($value{'a'}, $value{'b'}, $value{'c'}) = $coderef(\%h);
}
War nicht
$class->can($method), die Frage auf Existenz von Objektmethoden, bei Berücksichtigung des @ISA?