Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Class::MOP::Method(3) User Contributed Perl DocumentationClass::MOP::Method(3)

NAME
       Class::MOP::Method - Method Meta	Object

VERSION
       version 2.2005

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	Class::MOP::Method instance, followed
	   by a	hash of	options.

	   The options are:

	   o	   name

		   The method name (without a package name). This is required
		   if $code is a coderef.

	   o	   package_name

		   The package name for	the method. This is required if	$code
		   is a	coderef.

	   o	   associated_metaclass

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

       $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
	   This	returns	the method's 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
	   This	returns	the Class::MOP::Class 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 Class::MOP::Class 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 Class::MOP::Class	instance for this class.

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

AUTHORS
       o   Stevan Little <stevan.little@iinteractive.com>

       o   Dave	Rolsky <autarch@urth.org>

       o   Jesse Luehrs	<doy@tozt.net>

       o   Shawn M Moore <code@sartak.org>

       o   xxxx	x<section>xx'xx	(Yuval Kogman) <nothingmuch@woobling.org>

       o   Karen Etheridge <ether@cpan.org>

       o   Florian Ragwitz <rafl@debian.org>

       o   Hans	Dieter Pearcey <hdp@weftsoar.net>

       o   Chris Prather <chris@prather.org>

       o   Matt	S Trout	<mst@shadowcat.co.uk>

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 v5.24.1			  2017-05-03		 Class::MOP::Method(3)

NAME | VERSION | DESCRIPTION | METHODS | AUTHORS | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Class::MOP::Method&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help