| MooseX-Declare documentation | Contained in the MooseX-Declare distribution. |
MooseX::Declare::Syntax::Keyword::MethodModifier - Handle method modifier declarations
Allows the implementation of method modification handlers like around and
before.
A required string that is one of:
Object->register_method_declaration (Object $metaclass, Str $name, Object $method)
This will add the method modifier to the $metaclass via Moose::Utils
add_method_modifier, whose return value will also be returned from this
method.
This software is copyright (c) 2010 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.
| MooseX-Declare documentation | Contained in the MooseX-Declare distribution. |
package MooseX::Declare::Syntax::Keyword::MethodModifier; BEGIN { $MooseX::Declare::Syntax::Keyword::MethodModifier::AUTHORITY = 'cpan:FLORA'; } BEGIN { $MooseX::Declare::Syntax::Keyword::MethodModifier::VERSION = '0.34'; } # ABSTRACT: Handle method modifier declarations use Moose; use Moose::Util; use Moose::Util::TypeConstraints; use namespace::clean -except => 'meta'; with 'MooseX::Declare::Syntax::MethodDeclaration'; has modifier_type => ( is => 'rw', isa => enum(undef, qw( around after before override augment )), required => 1, ); sub register_method_declaration { my ($self, $meta, $name, $method) = @_; return Moose::Util::add_method_modifier($meta->name, $self->modifier_type, [$name, $method->body]); } 1; __END__