Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

Class::MOP::Method

Name Class::MOP::Method
Version 2.2201
Located at /usr/local/lib64/perl5
File /usr/local/lib64/perl5/Class/MOP/Method.pm
Is Core No
Search CPAN for this module Class::MOP::Method
Documentation Class::MOP::Method
Module Details Class::MOP::Method


NAME

Class::MOP::Method - Method Meta Object


VERSION

version 2.2201


DESCRIPTION

The Method Protocol is very small, since methods in Perl 5 are just subroutines in a specific package. We provide a very basic introspection interface.


METHODS

Class::MOP::Method->wrap($code, %options)
This is the constructor. It accepts a method body in the form of either a code reference or a the Class::MOP::Method manpage instance, followed by a hash of options.

The options are:

$metamethod->clone(%params)
This makes a shallow clone of the method object. In particular, subroutine reference itself is shared between all clones of a given method.

When a method is cloned, the original method object will be available by calling original_method on the clone.

$metamethod->body
This returns a reference to the method's subroutine.

$metamethod-name >>$metamethod->name
This returns the method's name.

$metamethod-package_name >>$metamethod->package_name
This returns the method's package name.

$metamethod->fully_qualified_name
This returns the method's fully qualified name (package name and method name).

$metamethod-associated_metaclass >>$metamethod->associated_metaclass
This returns the the Class::MOP::Class manpage object for the method, if one exists.

$metamethod->original_method
If this method object was created as a clone of some other method object, this returns the object that was cloned.

$metamethod->original_name
This returns the method's original name, wherever it was first defined.

If this method is a clone of a clone (of a clone, etc.), this method returns the name from the first method in the chain of clones.

$metamethod->original_package_name
This returns the method's original package name, wherever it was first defined.

If this method is a clone of a clone (of a clone, etc.), this method returns the package name from the first method in the chain of clones.

$metamethod->original_fully_qualified_name
This returns the method's original fully qualified name, wherever it was first defined.

If this method is a clone of a clone (of a clone, etc.), this method returns the fully qualified name from the first method in the chain of clones.

$metamethod->is_stub
Returns true if the method is just a stub:
  sub foo;

$metamethod->attach_to_class($metaclass)
Given a the Class::MOP::Class manpage object, this method sets the associated metaclass for the method. This will overwrite any existing associated metaclass.

$metamethod->detach_from_class
Removes any associated metaclass object for the method.

$metamethod->execute(...)
This executes the method. Any arguments provided will be passed on to the method itself.

Class::MOP::Method->meta
This will return a the Class::MOP::Class manpage instance for this class.

It should also be noted that the Class::MOP manpage will actually bootstrap this module by installing a number of attribute meta-objects into its metaclass.


AUTHORS


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.

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024