Class::MOP::Method::Accessor
Section: User Contributed Perl Documentation (3pm)
Updated: 2023-01-30
Index
Return to Main Contents
NAME
Class::MOP::Method::Accessor - Method Meta Object for accessors
VERSION
version 2.2203
SYNOPSIS
use Class::MOP::Method::Accessor;
my $reader = Class::MOP::Method::Accessor->new(
attribute => $attribute,
is_inline => 1,
accessor_type => 'reader',
);
$reader->body->execute($instance); # call the reader method
DESCRIPTION
This is a subclass of "Class::MOP::Method" which is used by
"Class::MOP::Attribute" to generate accessor code. It handles
generation of readers, writers, predicates and clearers. For each type
of method, it can either create a subroutine reference, or actually
inline code by generating a string and "eval"'ing it.
METHODS
- Class::MOP::Method::Accessor->new(%options)
-
This returns a new "Class::MOP::Method::Accessor" based on the
%options provided.
-
- •
-
attribute
This is the "Class::MOP::Attribute" for which accessors are being
generated. This option is required.
- •
-
accessor_type
This is a string which should be one of ``reader'', ``writer'',
``accessor'', ``predicate'', or ``clearer''. This is the type of method
being generated. This option is required.
- •
-
is_inline
This indicates whether or not the accessor should be inlined. This
defaults to false.
- •
-
name
The method name (without a package name). This is required.
- •
-
package_name
The package name for the method. This is required.
-
- $metamethod->accessor_type
-
Returns the accessor type which was passed to "new".
- $metamethod->is_inline
-
Returns a boolean indicating whether or not the accessor is inlined.
- $metamethod->associated_attribute
-
This returns the Class::MOP::Attribute object which was passed to
"new".
- $metamethod->body
-
The method itself is generated when the accessor object is
constructed.
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.
Index
- NAME
-
- VERSION
-
- SYNOPSIS
-
- DESCRIPTION
-
- METHODS
-
- AUTHORS
-
- COPYRIGHT AND LICENSE
-
This document was created by
man2html,
using the manual pages.
Time: 11:29:43 GMT, March 29, 2024