Scroll to navigation

Class::MOP::Method::Wrapped(3pm) User Contributed Perl Documentation Class::MOP::Method::Wrapped(3pm)

NAME

Class::MOP::Method::Wrapped - Method Meta Object for methods with before/after/around modifiers

VERSION

version 2.2200

DESCRIPTION

This is a Class::MOP::Method subclass which implements before, after, and around method modifiers.

METHODS

Class::MOP::Method::Wrapped->wrap($metamethod, %options)

This is the constructor. It accepts a Class::MOP::Method object and a hash of options.

The options are:

  • name

    The method name (without a package name). This will be taken from the provided Class::MOP::Method object if it is not provided.

  • package_name

    The package name for the method. This will be taken from the provided Class::MOP::Method object if it is not provided.

  • associated_metaclass

    An optional Class::MOP::Class object. This is the metaclass for the method's class.

$metamethod->get_original_method

This returns the Class::MOP::Method object that was passed to the constructor.

$metamethod->add_before_modifier($code)

$metamethod->add_after_modifier($code)

$metamethod->add_around_modifier($code)

These methods all take a subroutine reference and apply it as a modifier to the original method.

$metamethod->before_modifiers

$metamethod->after_modifiers

$metamethod->around_modifiers

These methods all return a list of subroutine references which are acting as the specified type of modifier.

AUTHORS

  • Stevan Little <stevan@cpan.org>
  • Dave Rolsky <autarch@urth.org>
  • Jesse Luehrs <doy@cpan.org>
  • Shawn M Moore <sartak@cpan.org>
  • יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>
  • Karen Etheridge <ether@cpan.org>
  • Florian Ragwitz <rafl@debian.org>
  • Hans Dieter Pearcey <hdp@cpan.org>
  • Chris Prather <chris@prather.org>
  • Matt S Trout <mstrout@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2006 by Infinity Interactive, Inc.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

2022-02-06 perl v5.34.0