Class::MakeMethods::Template::ClassName - Access object's class |
Class::MakeMethods::Template::ClassName - Access object's class
package MyObject; use Class::MakeMethods::Template::ClassName ( subclass_name => [ 'type' ] ); ... package main; my $object = MyObject->new;
$object->type('Foo') # reblesses object to MyObject::Foo subclass
print $object->type(); # prints "Foo".
These method types access or change information about the class an object is associated with.
Called without arguments, returns the class name.
If called with an argument, reblesses object into that class. If the class doesn't already exist, it will be created.
Called without arguments, returns the subclass name.
If called with an argument, reblesses object into that subclass. If the subclass doesn't already exist, it will be created.
The subclass name is written as follows:
::
if it's a package elsewhere: the full name with leading ::
Provides a shared hash mapping keys to class names.
class_registry => [ qw/ foo / ]
Takes a single string or a reference to an array of strings as its argument. For each string, creates a new anonymous hash and associated accessor methods that will map scalar values to classes in the calling package's subclass hiearchy.
The accessor methods provide an interface to the hash as illustrated below. Note that several of these functions operate quite differently depending on the number of arguments passed, or the context in which they are called.
See the Class::MakeMethods manpage for general information about this distribution.
See the Class::MakeMethods::Template manpage for information about this family of subclasses.
Class::MakeMethods::Template::ClassName - Access object's class |