Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MakeMethods::Emulator:UseruContributed Perl DoMakeMethods::Emulator::Struct(3)

NAME
       Class::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.24.1			  2004-09-06  MakeMethods::Emulator::Struct(3)

NAME | SYNOPSIS | DESCRIPTION | EXAMPLE | COMPATIBILITY | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Class::MakeMethods::Emulator::Struct&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help