Class::MakeMethods::Emulator - Demonstrate class-generator equivalency
# 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( ... );
In several cases, Class::MakeMethods provides functionality closely equivalent
to that of an existing module, and it is simple to map the existing module's
interface to that of Class::MakeMethods.
Class::MakeMethods::Emulator provides emulators for Class::MethodMaker,
Class::Accessor::Fast, Class::Data::Inheritable, Class::Singleton,
Class::Struct, accessors, and mcoder, each of which passes the original
module's test suite, usually requiring only the addition of a a single line to
each test, activating the emulation module.
Beyond demonstrating compatibility, these emulators also generally indicate the
changes needed to switch to direct use of Class::MakeMethods functionality,
illustrate commonalities between the various modules, and serve as a source
for new ideas that can be integrated into Class::MakeMethods.
See Class::MakeMethods for general information about this distribution.
See Class::MakeMethods::Emulator::accessors, and accessors from CPAN.
See Class::MakeMethods::Emulator::Struct, and Class::Struct from CPAN.
See Class::MakeMethods::Emulator::AccessorFast, and Class::Accessor::Fast from
CPAN.
See Class::MakeMethods::Emulator::Inheritable, and Class::Data::Inheritable from
CPAN.
See Class::MakeMethods::Emulator::MethodMaker, and Class::MethodMaker from CPAN.
See Class::MakeMethods::Emulator::Singleton, and Class::Singleton from CPAN.
See Class::MakeMethods::Emulator::mcoder, and mcoder from CPAN.