Class::Tom - The Transportable Object Model for Perl


NAME

Class::Tom - The Transportable Object Model for Perl


SUPPORTED PLATFORMS

This module is not included with the standard ActivePerl distribution. It is available as a separate download using PPM.

SYNOPSIS

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 );


DESCRIPTION

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.


METHODS

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.


BUGS

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.


AUTHOR

James A. Duncan <j@mesduncan.co.uk>


SEE ALSO

perl(1)

 Class::Tom - The Transportable Object Model for Perl