MooseX::Storage::Basic
The simplest level of serialization
- Provided by: libmoosex-storage-perl (Version: 0.50-1)
- Report a bug
The simplest level of serialization
version 0.50
package Point;
use Moose;
use MooseX::Storage;
with Storage;
has 'x' => (is => 'rw', isa => 'Int');
has 'y' => (is => 'rw', isa => 'Int');
1;
my $p = Point->new(x => 10, y => 10);
## methods to pack/unpack an
## object in perl data structures
# pack the class into a hash
$p->pack(); # { __CLASS__ => 'Point-0.01', x => 10, y => 10 }
# unpack the hash into a class
my $p2 = Point->unpack({ __CLASS__ => 'Point-0.01', x => 10, y => 10 });
# unpack the hash, with injection of additional paramaters
my $p3 = Point->unpack( $p->pack, inject => { x => 11 } );
This is the most basic form of serialization. This is used by default but the exported "Storage" function.
This trait is applied on a perl-case basis. To set this flag for all objects that inherit from this role, see MooseX::Storage::Traits::DisableCycleDetection.
All complex software has bugs lurking in it, and this module is no exception. If you find a bug please or add the bug to cpan-RT at <https://rt.cpan.org/Dist/Display.html?Queue=MooseX-Storage>.
This software is copyright (c) 2007 by Infinity Interactive, Inc..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.