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

FreeBSD Manual Pages

  
 
  

home | help
MakeMethods::Template:UserhContributed Perl DocuMakeMethods::Template::Hash(3)

NAME
       Class::MakeMethods::Template::Hash - Method interfaces for hash-based
       objects

SYNOPSIS
	 package MyObject;
	 use Class::MakeMethods::Template::Hash	(
	   new		   => [	'new' ],
	   scalar	   => [	'foo', 'bar' ]
	 );

	 package main;

	 my $obj = MyObject->new( foo => "Foozle", bar => "Bozzle" );
	 print $obj->foo();
	 $obj->bar("Bamboozle");

DESCRIPTION
       These meta-methods create and access values within blessed hash
       objects.

       Common Parameters: The following	parameters are defined for Hash	meta-
       methods.

       hash_key
	   The hash key	to use when retrieving values from each	hash instance.
	   Defaults to '*', the	name of	the meta-method.

	   Changing this allows	you to change an accessor method name to
	   something other than	the name of the	hash key used to retrieve its
	   value.

	   Note	that this parameter is not portable to the other
	   implementations, such as Global or InsideOut.

	   You can take	advantage of parameter expansion to define methods
	   whose hash key is composed of the defining package's	name and the
	   individual method name, such	as "$self->{MyObject-foo}":

		 'hash_key' => '*{target_class}-*{name}'

       Common Behaviors

       Behavior: delete
	   Deletes the named key and associated	value from the current hash
	   instance.

   Standard Methods
       The following methods from Generic are all supported:

	 new
	 scalar
	 string
	 string_index
	 number
	 boolean
	 bits (*)
	 array
	 hash
	 tiedhash
	 hash_of_arrays
	 object
	 instance
	 array_of_objects
	 code
	 code_or_scalar

       See Class::MakeMethods::Template::Generic for the interfaces and
       behaviors of these method types.

       The items marked	with a * above are specifically	defined	in this
       package,	whereas	the others are formed automatically by the interaction
       of this package's generic settings with the code	templates provided by
       the Generic superclass.

   struct
	 struct	=> [ qw	/ foo bar baz /	];

       Creates methods for setting, checking and clearing values which are
       stored by position in an	array. All the slots created with this meta-
       method are stored in a single array.

       The argument to struct should be	a string or a reference	to an array of
       strings.	For each string	meta-method x, it defines two methods: x and
       clear_x.	x returns the value of the x-slot.  If called with an
       argument, it first sets the x-slot to the argument.  clear_x sets the
       slot to undef.

       Additionally, struct defines three class	method:	struct,	which returns
       a list of all of	the struct values, struct_fields, which	returns	a list
       of all the slots	by name, and struct_dump, which	returns	a hash of the
       slot-name/slot-value pairs.

SEE ALSO
       See Class::MakeMethods for general information about this distribution.

       See Class::MakeMethods::Template	for more about this family of
       subclasses.

       See Class::MakeMethods::Template::Generic for information about the
       various accessor	interfaces subclassed herein.

perl v5.24.1			  2004-09-06	MakeMethods::Template::Hash(3)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO

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

home | help