MooseX::Declare::Syntax::MooseSetup − Common Moose namespaces declarations
This role is basically an extension to NamespaceHandling. It adds all the common parts for Moose namespace definitions. Examples of this role can be found in the class and role keywords.
auto_make_immutable
Bool Object−>auto_make_immutable ()
Since Moose::Roles can’t be made immutable (this is not a bug or a missing feature, it would make no sense), this always returns false.
imported_moose_symbols
List Object−>imported_moose_symbols ()
This will return "confess" and "blessed" by default to provide as additional imports to the namespace.
import_symbols_from
Str Object−>import_symbols_from ()
The namespace from which the additional imports will be imported. This will return "Moose" by default.
• |
MooseX::Declare::Syntax::NamespaceHandling |
|||
• |
MooseX::Declare::Syntax::EmptyBlockIfMissing |
default_inner
ArrayRef default_inner ()
This will provide the following default inner-handlers to the namspace:
• |
method |
A simple Method handler.
• |
around |
This is a MethodModifier handler that will start the signature of the generated method with "$orig: $self" to provide the original method in $orig.
• |
after |
|||
• |
before |
|||
• |
override |
|||
• |
augment |
These four handlers are MethodModifier instances.
• |
clean |
This is an instance of the Clean keyword handler.
The original method will never be called and all arguments are ignored at the moment.
setup_inner_for
Object−>setup_inner_for (ClassName $class)
This will install a "with" function that will push its arguments onto a global storage array holding the roles of the current namespace.
add_namespace_customizations
Object−>add_namespace_customizations (Object $context, Str $package, HashRef $options)
After all other customizations, this will first add code to import the "imported_moose_symbols" from the package returned in "import_symbols_from" to the preamble.
Then it will add a code part that will immutabilize the class to the cleanup code if the "auto_make_immutable" method returned a true value and "$options−"{is}{mutable}> does not exist.
handle_post_parsing
CodeRef Object−>handle_post_parsing (Object $context, Str $package, Str|Object $name)
Generates a callback that sets up the roles in the global role storage for the current namespace. The $name parameter will be the specified name (in contrast to $package which will always be the fully qualified name) or the anonymous metaclass instance if none was specified.
• |
MooseX::Declare |
|||
• |
Moose |
• |
Florian Ragwitz <rafl AT debian DOT org> |
||
• |
Ash Berlin <ash AT cpan DOT org> |
||
• |
Chas. J. Owens IV <chas DOT owens AT gmail DOT com> |
||
• |
Chris Prather <chris AT prather DOT org> |
||
• |
Dave Rolsky <autarch AT urth DOT org> |
||
• |
Devin Austin <dhoss AT cpan DOT org> |
||
• |
Hans Dieter Pearcey <hdp AT cpan DOT org> |
||
• |
Justin Hunter <justin DOT d DOT hunter AT gmail DOT com> |
||
• |
Matt Kraai <kraai AT ftbfs DOT org> |
||
• |
Michele Beltrame <arthas AT cpan DOT org> |
||
• |
Nelo Onyiah <nelo DOT onyiah AT gmail DOT com> |
||
• |
nperez <nperez AT cpan DOT org> |
||
• |
Piers Cawley <pdcawley AT bofh DOT org DOT uk> |
||
• |
Rafael Kitover <rkitover AT io DOT com> |
||
• |
Robert ’phaylon’ Sedlacek <rs AT 474 DOT at> |
||
• |
Stevan Little <stevan DOT little AT iinteractive DOT com> |
||
• |
Tomas Doran <bobtfish AT bobtfish DOT net> |
||
• |
Yanick Champoux <yanick AT babyl DOT dyndns DOT org> |
This software is copyright (c) 2011 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.