Class::Tom - The Transportable Object Model for Perl |
Class::Tom - The Transportable Object Model for Perl
use Class::Tom qw ( restore );
my $tom = new Class::Tom;
$tom->insert(<OBJECT>);
$tom->insert(<ANONYMOUS SUB>);
$tom->insert(<PACKAGE NAME>);
my $flat = $tom->store();
my $newtom = restore( $flat );
Class::Tom
allows you to transport objects from one system to another
without requiring that the packages the object relies on actually exist on
the other machine.
new
is the objects constructor. It can optionally take the Encoder
argument if you've created a new encoding scheme.
insert
method accepts one of three things as an argument, a) an
CODE reference (such as an anonymous subroutine or a reference to a
subroutine), b) an Object or c) a string that contains the package name.
If you insert an Object then insert
returns the id of that object in
the internal object list.
extract
method returns an object that has been insert
'ed. The
argument is the Id of the object you insert.
store
method returns the flattened container ready for shipping.
register
method evals each of the methods stored inside the TOM
compartment
restore
is optionally exported, and is used to turn a flattened TOM
object into a real perl object.
There are probably loads. I've not had time to test this on any machine other than my own, so your milage may vary. Remember, this is a beta version. 3.02 will be the full bugfixed release.
James A. Duncan <j@mesduncan.co.uk>
perl(1)
Class::Tom - The Transportable Object Model for Perl |