Provided by: libmoosex-storage-perl_0.52-1_all bug

NAME

       MooseX::Storage::Engine - The meta-engine to handle collapsing and expanding objects

VERSION

       version 0.52

DESCRIPTION

       There really aren't any major user serviceable parts here. However the typical use case is
       adding new non-Moose classes to the type registry for serialization. Here is an example of
       this for DateTime objects. This assumes a "DateTime" type has been registered.

           MooseX::Storage::Engine->add_custom_type_handler(
               'DateTime' => (
                   expand   => sub { DateTime::Format::ISO8601->new->parser_datetime(shift) },
                   collapse => sub { (shift)->iso8601 },
               )
           );

METHODS

   Accessors
       class
       object
       storage
       seen

   API
       expand_object
       collapse_object

   ...
       collapse_attribute
       collapse_attribute_value
       expand_attribute
       expand_attribute_value
       check_for_cycle_in_collapse
       check_for_cycle_in_expansion
       map_attributes

   Type Constraint Handlers
       find_type_handler ($type)
       find_type_handler_for ($name)
       add_custom_type_handler ($name, %handlers)
       remove_custom_type_handler ($name)

SUPPORT

       Bugs may be submitted through the RT bug tracker
       <https://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Storage> (or
       bug-MooseX-Storage@rt.cpan.org <mailto:bug-MooseX-Storage@rt.cpan.org>).

       There is also a mailing list available for users of this distribution, at
       <http://lists.perl.org/list/moose.html>.

       There is also an irc channel available for users of this distribution, at "#moose" on
       "irc.perl.org" <irc://irc.perl.org/#moose>.

AUTHORS

       •   Chris Prather <chris.prather@iinteractive.com>

       •   Stevan Little <stevan.little@iinteractive.com>

       •   יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

COPYRIGHT AND LICENSE

       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.