in reply to storable.pm+CODE refs
I've been thinking about this for a while... I think that it ought to be possible using B::Deparse.
According to the doc:
use B::Deparse; $deparse = B::Deparse->new("-p", "-sC"); $body = $deparse->coderef2text(\&func); eval "sub func $body"; # the inverse operation
So it should be possible to store the coderef as text along with something to indicate that it's a coderef (and it's name, if it has one). On thaw it would simply eval it.
Note that you can probably already do this without touching Storable. IIRC, before freeze()/thaw()ing Storable will try to call STORABLE_{freeze,thaw} in your namespace. You can use that as a filter mechanism.
-- darobin
|
---|
Replies are listed 'Best First'. | |
---|---|
(tye)Re2: storable.pm+CODE refs
by tye (Sage) on Mar 28, 2001 at 02:33 UTC | |
by darobin (Monk) on Mar 28, 2001 at 02:42 UTC |
In Section
Seekers of Perl Wisdom