MooseX...:Engine(3pm)

πŸ“¦
version 0.53 Β· 5 versions
, in ubuntu noble, ubuntu resolute, ubuntu stonking

✨ NAME ✨

okay so this is the manual page for MooseX::Storage::Engine β€” dropping it in the User Contributed Perl Documentation collection, bestie β€” and it's the meta-engine that handles collapsing and expanding objects. that's it, that's the whole vibe πŸ’…


🌸 VERSION 🌸

version 0.53 ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

ngl, there really aren't any major user-serviceable parts in here. like, fr fr, it's mostly internals doing internals things πŸ™ˆ

but β€” the typical use case, the one you're actually gonna care about, is adding new non-Moose classes to the type registry so they can get serialized. here's the whole thing for DateTime objects, and this assumes a "DateTime" type has already been registered:

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

ate, honestly. πŸ“


πŸ‘‘ METHODS πŸ‘‘

πŸ’œ Accessors

  • class
  • object
  • storage
  • seen

✨ API ✨

  • expand_object
  • collapse_object

πŸ’€ ... πŸ’€

yes the subsection is literally called .... iconic. no notes.
  • 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 🫢

got bugs? bestie, we got a whole tracker for that:

there's also a mailing list for users of this distribution, at <http://lists.perl.org/list/moose.html>.

and there's an irc channel for users of this distribution too, at "#moose" on "irc.perl.org" <irc://irc.perl.org/#moose>. come hang out 🌈


🌟 AUTHORS 🌟

  • Chris Prather <chris.prather@iinteractive.com>
  • Stevan Little <stevan.little@iinteractive.com>
  • Χ™Χ•Χ‘Χœ Χ§Χ•Χ’'מן (Yuval Kogman) <nothingmuch@woobling.org>

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.


okay that's the whole page, you made it, I'm so proud of you πŸŽ€ this was put together with perl v5.36.0 on 2022-10-16, and that gorgeous first line was the MooseX...:Engine(3pm) header from the User Contributed Perl Documentation set. mwah. slay. periodt. πŸ’–

πŸ“¦ where this page comes from