Class::MethodMaker::OpUser(Contributed Perl DocumClass::MethodMaker::OptExt(3)NAMEClass::MethodMaker::OptExt - Constants for C::MM's option extension
mechanism
SYNOPSIS
This class is internal to Class::MethodMaker and should not be used by
any clients. It is not part of the public API.
DESCRIPTION
This class contains the constants used by Class::MethodMaker to
determine the names of its methods dependent upon options invoked.
CLASS CONSTANTS
OPTEXT
OPTEXT is a map from options that are implemented as method extensions
to the option parameters.
Parameter keys are:
encode
code number (to allow the option combination to be encoded whilst
keeping the length of the subr name no more than 8 chars). encode
is required for all opts (for determining method extension), and
must be a power of two.
refer
Code for referring to storage (default: '$_[0]->{$name}').
decl
Code for declaring storage.
postac
Code to execute immediately after any assignment check --- for
example, to initialize storage if necessary
asgnchk
Code for checking assignments.
defchk
Code for default checking.
reset
Code to execute when resetting an element
read
Code to execute each time an value is read
store
Code to execute each time a value is stored
CLASS COMPONENTSCLASS HIGHER-LEVEL FUNCTIONS
encode
Take a set of options, return a two-letter code being the extension to
add to the method to incorporate the extensions, and a list (arrayref)
of the extensions represented.
SYNOPSIS
my ($ext, $opt) =
Class::MethodMaker::OptExt->encode([qw( static type foobar )]);
ARGUMENTS
options
The options to encode, as an arrayref of option names
RETURNS
ext A code (string) to append to a methodname to represent the
options used.
opts
The options represented by the ext . This is generally a
subset of the of those provided in options, for not all general
options are handled by an encoded methodname.
CLASS HIGHER-LEVEL PROCEDURES
INSTANCE CONSTRUCTIONINSTANCE COMPONENTSINSTANCE HIGHER-LEVEL FUNCTIONS
INSTANCE HIGHER-LEVEL PROCEDURES
EXAMPLESBUGSREPORTING BUGS
Email the development mailing list
"class-mmaker-devel@lists.sourceforge.net".
AUTHOR
Martyn J. Pearce
COPYRIGHT
Copyright (c) 2003 Martyn J. Pearce. This program is free software;
you can redistribute it and/or modify it under the same terms as Perl
itself.
SEE ALSOperl v5.10.1 2008-12-02 Class::MethodMaker::OptExt(3)