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
- "new" is the objects constructor. It can
optionally take the Encoder argument if you've created a new encoding
scheme.
- insert
- The "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
- The "extract" method returns an object
that has been "insert"'ed. The argument
is the Id of the object you insert.
- store
- The "store" method returns the flattened
container ready for shipping.
- register
- The "register" method evals each of the
methods stored inside the TOM compartment
- restore
- "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>
Hey! The above document had some coding errors, which are explained
below:
- Around line 45:
- '=item' outside of any '=over'
- Around line 232:
- You forgot a '=back' before '=head1'