MooseX...sideOut(3pm)

πŸ“¦
version 0.106 Β· 4 versions
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– MooseX::InsideOut πŸ’–

okay bestie, welcome to MooseX::InsideOut β€” inside-out objects with Moose, and honestly? it's giving ✨main character energy✨ for your attribute storage.

this one's from the User Contributed Perl Documentation corner of the perl world, so you know it's real ones only. iykyk πŸ’…


🌸 VERSION 🌸

version 0.106 β€” yeah she's got a number, she's official πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

package My::Object;

use MooseX::InsideOut;

# ... normal Moose functionality
# or ...

package My::Subclass;

use MooseX::InsideOut;
extends 'Some::Other::Class';

see how chill that is?? you literally just use it and go about your day. no cap. 🌈


πŸ’œ DESCRIPTION πŸ’œ

so MooseX::InsideOut provides metaroles for inside-out objects. what does that mean in human words? it means it sets up your attribute slot storage somewhere other than inside $self. the attributes are not living in the object. they have their own apartment. independent. iconic. 🏠✨

and the why is the best part, fr fr: this means you can extend non-Moose classes β€” like, classes whose internals you either don't want to care about, or that just aren't hash-based at all. normally that's a whole situation. here? handled. 🫢

ngl this is the kind of thing that makes you feel like you've unlocked a secret level of Moose. you didn't cheat, you just... knew someone. 😌

πŸ‘‘ METHODS πŸ‘‘

πŸŽ€ init_meta

apply the instance metarole necessary for inside-out storage.

that's it. that's the method. she does one thing and she does it flawlessly. periodt. πŸ’…


🌟 TODO 🌟

the to-do list, aka the "we'll get to it bestie" list:

  • dumping (for debugging purposes) πŸ™ˆ
  • serialization (for e.g. storable) πŸ“¦
  • (your suggestions here) πŸ‘€ ← yes literally, the original says this, come through with your ideas

πŸ“ AUTHOR πŸ“

Hans Dieter Pearcey <hdp@cpan.org> β€” the legend, the icon, the moment. πŸ’–


this software is copyright (c) 2011 by Hans Dieter Pearcey <hdp@cpan.org>. 🫢

this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. so like, go off, remix it, share it, just keep the same energy. πŸ’œ


and that's the whole page, bestie!! πŸŽ‰

cute little sign-off for the record books: this lovely thing is documented as perl v5.36.0, dated 2022-12-12, and it lives in the manpage files as MooseX...sideOut(3pm) under User Contributed Perl Documentation. πŸ¦‹πŸŒΈ

go write some inside-out objects. i believe in you. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from