MakeMe...mulator(3pm)

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

πŸ’… NAME πŸ’…

Class::MakeMethods::Emulator β€” bestie, this is the demonstration of class-generator equivalency, and it lowkey ate 🫢


✨ SYNOPSIS ✨

okay so here's the whole vibe β€” each one of these is your familiar fave, just wearing a MakeMethods hoodie:

# Equivalent to use Class::Singleton;
use Class::MakeMethods::Emulator::Singleton;

# Equivalent to use Class::Struct;
use Class::MakeMethods::Emulator::Struct;
struct ( ... );

# Equivalent to use Class::MethodMaker( ... );
use Class::MakeMethods::Emulator::MethodMaker( ... );

# Equivalent to use base 'Class::Inheritable';
use base 'Class::MakeMethods::Emulator::Inheritable';
MyClass->mk_classdata( ... );

# Equivalent to use base 'Class::AccessorFast';
use base 'Class::MakeMethods::Emulator::AccessorFast';
MyClass->mk_accessors(qw(this that whatever));

# Equivalent to use accessors( ... );
use Class::MakeMethods::Emulator::accessors( ... );

# Equivalent to use mcoder( ... );
use Class::MakeMethods::Emulator::mcoder( ... );

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea β˜• β€” in several cases, Class::MakeMethods gives you functionality that's closely equivalent to some module you already know and love, and mapping that existing module's interface onto Class::MakeMethods' interface is literally so simple. No cap. πŸ’–

Class::MakeMethods::Emulator ships emulators for Class::MethodMaker, Class::Accessor::Fast, Class::Data::Inheritable, Class::Singleton, Class::Struct, accessors, and mcoder. And babes, every single one of them passes the original module's test suite πŸ˜­πŸ‘‘ β€” usually the only thing you gotta do is add a single line to each test that activates the emulation module. One line. That's it. Iconic behaviour, honestly.

And beyond just flexing compatibility, these emulators are also out here doing the absolute most for you:

  • they generally show you the changes needed to switch over to using Class::MakeMethods functionality directly πŸ”₯
  • they illustrate the commonalities between all the various modules (siblings fr fr πŸ‘―)
  • and they serve as a source for new ideas that can get integrated into Class::MakeMethods 🌈
ngl this is the "look, we can do what your fave does, and here's the receipts" section of the distribution. periodt. πŸ’…

🌸 SEE ALSO 🌸

  • Peep Class::MakeMethods for the general ✨everything✨ about this distribution.
  • Peep Class::MakeMethods::Emulator::accessors, and accessors from CPAN. 🫢
  • Peep Class::MakeMethods::Emulator::Struct, and Class::Struct from CPAN. πŸŽ€
  • Peep Class::MakeMethods::Emulator::AccessorFast, and Class::Accessor::Fast from CPAN. 🧚
  • Peep Class::MakeMethods::Emulator::Inheritable, and Class::Data::Inheritable from CPAN. πŸ’œ
  • Peep Class::MakeMethods::Emulator::MethodMaker, and Class::MethodMaker from CPAN. ⭐
  • Peep Class::MakeMethods::Emulator::Singleton, and Class::Singleton from CPAN. πŸ“
  • Peep Class::MakeMethods::Emulator::mcoder, and mcoder from CPAN. πŸ¦‹

and that's the whole page, bestie ✨ go forth and emulate πŸ’…

this lil masterpiece is perl v5.36.0, dated 2022-10-13, and it's the MakeMe...mulator(3pm) er, MakeMe...mulator(3pm) page from the User Contributed Perl Documentation β€” k byeeee πŸŽ€

πŸ“¦ where this page comes from