Class::MOP::Module(3)
π Class::MOP::Module π
okay bestie, welcome to the Class::MOP::Module page from the User Contributed Perl Documentation, aka the manual you landed on at 3am because your metaobject situation is giving chaos. sit down, hydrate, we're doing this together π«Ά
β¨ NAME β¨
Class::MOP::Module β Module Meta Object π
πΈ VERSION πΈ
version 2.4000 β yes she has a version, yes she's proud of it β¨
π¦ DESCRIPTION π¦
So the way that a module works here is: a module is basically a Class::MOP::Package but with metadata. And in our case, that metadata is literally just the version and the authority. that's it. that's the whole vibe. lowkey elegant, ngl π
π INHERITANCE π
Class::MOP::Module is a subclass of Class::MOP::Package. it's giving nepo baby but make it metaobject, and honestly? we love her for it π
β METHODS β
π« Class::MOP::Module->create($package, %options) π«
She overrides create from Class::MOP::Package to hook you up with these additional options:
"version"β a version number, and it gets installed into the$VERSIONpackage global variable. so like, the whole point π"authority"β an authority, and it gets installed into the$AUTHORITYpackage global variable.
π¨ okay important: authority is a legacy field and its use is not recommended. it's the old money of options. respect the history, don't use it, periodt π
π« $metamodule->version π«
This is a read-only attribute, and it returns the $VERSION of the package β if one exists. if not? nothing, bestie. no version, no vibes π
π« $metamodule->authority π«
This is a read-only attribute which returns the $AUTHORITY of the package, if one exists. same energy as above, just the legacy one π
π« $metamodule->identifier π«
This constructs a string which combines the name, version and authority. it's the glow-up collage of all three fields at once, slay π
π« Class::MOP::Module->meta π«
This will return a Class::MOP::Class instance for this class. meta about the meta. it's metas all the way down and honestly that's iconic π
π AUTHORS π
look at this friend group, they ate and left no crumbs:
- Stevan Little <stevan@cpan.org>
- Dave Rolsky <autarch@urth.org>
- Jesse Luehrs <doy@cpan.org>
- Shawn M Moore <sartak@cpan.org>
- ΧΧΧΧ Χ§ΧΧ'ΧΧ (Yuval Kogman) <nothingmuch@woobling.org>
- Karen Etheridge <ether@cpan.org>
- Florian Ragwitz <rafl@debian.org>
- Hans Dieter Pearcey <hdp@cpan.org>
- Chris Prather <chris@prather.org>
- Matt S Trout <mstrout@cpan.org>
π COPYRIGHT AND LICENSE π
This software is copyright (c) 2006 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. so like, go off, remix it, just keep it free fr fr π«Ά
and that's the page bestie!! this one came from perl v5.42.0 and was dated 2025-07-25, so shoutout to that exact snapshot of the Class::MOP::Module(3) manpage for making this whole yap possible πβ¨ go forth and metaobject responsibly πΈπ¦
π¦ where this page comes from
- fedora 43: perl-Moose 2.4000-4.fc43 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms