Class::MethodMaker::OptExt - Constants for C::MM's option extension mechanism
This class is internal to Class::MethodMaker and should not be used by any
clients. It is not
part of the public API.
This class contains the constants used by Class::MethodMaker to determine the
names of its methods dependent upon options invoked.
OPTEXT is a map from options that are implemented as method extensions to the
Parameter keys are:
- 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.
- Code for referring to storage (default:
- Code for declaring storage.
- Code to execute immediately after any assignment check ---
for example, to initialize storage if necessary
- Code for checking assignments.
- Code for default checking.
- Code to execute when resetting an element
- Code to execute each time an value is read
- Code to execute each time a value is stored
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
my ($ext, $opt) =
Class::MethodMaker::OptExt->encode([qw( static type foobar )]);
- The options to encode, as an arrayref of option names
- A code (string) to append to a methodname to represent the
- 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.
Email the development mailing list
Martyn J. Pearce
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.