phpman > perldoc > Class::MOP::Method::Accessor(3pm)

Markdown | JSON | MCP    

NAME
    Class::MOP::Method::Accessor - Method Meta Object for accessors

VERSION
    version 2.2200

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 AT cpan.org>

    *   Dave Rolsky <autarch AT urth.org>

    *   Jesse Luehrs <doy AT cpan.org>

    *   Shawn M Moore <sartak AT cpan.org>

    *   יובל קוג'מן (Yuval Kogman) <nothingmuch AT woobling.org>

    *   Karen Etheridge <ether AT cpan.org>

    *   Florian Ragwitz <rafl AT debian.org>

    *   Hans Dieter Pearcey <hdp AT cpan.org>

    *   Chris Prather <chris AT prather.org>

    *   Matt S Trout <mstrout AT 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.

Class::MOP::Method::Accessor(3pm)
NAME VERSION SYNOPSIS DESCRIPTION METHODS AUTHORS COPYRIGHT AND LICENSE

Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-14 00:55 @216.73.216.200
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top