Rechercher une page de manuel
Class::MakeMethods::Emulator::Struct.3pm
Langue: en
Version: 2004-09-06 (debian - 07/07/09)
Section: 3 (Bibliothèques de fonctions)
NAME
Class::MakeMethods::Emulator::Struct - Emulate Class::StructSYNOPSIS
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.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre