MakeMethods::Emulator:UseruContributed Perl DoMakeMethods::Emulator::Struct(3)NAMEClass::MakeMethods::Emulator::Struct - Emulate Class::Struct
SYNOPSIS
use Class::MakeMethods::Emulator::Struct;
struct (
simple => '$',
ordered => '@',
mapping => '%',
obj_ref => 'FooObject'
);
DESCRIPTION
This module emulates the functionality of Class::Struct by munging the
provided field-declaration arguments to match those expected by
Class::MakeMethods.
It supports the same four types of accessors, the choice of array-based
or hash-based objects, and the choice of installing methods in the
current package or a specified target.
EXAMPLE
The below three declarations create equivalent methods for a simple
hash-based class with a constructor and four accessors.
use Class::Struct;
struct (
simple => '$',
ordered => '@',
mapping => '%',
obj_ref => 'FooObject'
);
use Class::MakeMethods::Emulator::Struct;
struct (
simple => '$',
ordered => '@',
mapping => '%',
obj_ref => 'FooObject'
);
use Class::MakeMethods (
-MakerClass => 'Standard::Array',
'new' => 'new',
'scalar' => 'simple',
'array -auto_init 1' => 'ordered',
'hash -auto_init 1' => 'mapping',
'object -auto_init 1' => '-class FooObject obj_ref'
);
COMPATIBILITY
This module aims to offer a "95% compatible" drop-in replacement for
the core Class::Struct module for purposes of comparison and code
migration.
The "class-struct.t" test for the core Class::Struct module is included
with this package. The test is unchanged except for the a direct
substitution of this emulator's name in the place of the core module.
However, there are numerous internal differences between the methods
generated by the original Class::Struct and this emulator, and some
existing code may not work correctly without modification.
SEE ALSO
See Class::MakeMethods for general information about this distribution.
See Class::MakeMethods::Emulator for more about this family of
subclasses.
See Class::Struct for documentation of the original module.
See Class::MakeMethods::Standard::Hash and
Class::MakeMethods::Standard::Array for documentation of the created
methods.
perl v5.14.2 2004-09-06 MakeMethods::Emulator::Struct(3)