Thread [POE] Subaufrufe
(11 answers)
Opened by eisbeer at 2004-08-22 17:22
Es sieht aus, als ob irgendwo im POE-Framework deine Subroutine verloren geht, weil sie nicht richtig serialisiert/deserialisiert werden konnte. Evtl. gibt es gar keine Unterstuetzung fuer Referenzen oder es gibt nur keine Unterstuetzung fuer CODE-Referenzen.
Mit B::Deparse koenntest du den Sourcecode der Subroutine erzeugen und irgendwo ablegen. Dann koenntest du auf der anderen Seite ein eval() oder vielleicht besser (da sicherer) ein Safe::reval machen, um die Subroutine wieder zu erhalten. Das machen z.B. auch Data::Dumper (wenn $Deparse auf wahr gesetzt ist) und Storable (ebenso). Anwendung: Code: (dl
)
perl -l -MB::Deparse -e '$sub = sub { print "Hallo, Welt!" }; print "sub " . B::Deparse->new->coderef2text($sub)' |