Mason::Plugin::LvalueAttributes(3pm)

Mason::Plugin::LvalueAttributes3pm

Create lvalue accessors for all rw component attributes

Usage

    <%class>
    has 'a' => (is => "rw")
    has 'b' => (is => "ro")
    </%class>
    <%init>
    # set a to 5
    $.a = 5;
    # set a to 6
    $.a(6);
    # error
    $.b = 7;
    </%init>

Overview

This plugins creates an Lvalue accessor for every read/write attribute in the component. Which means that instead of writing:

    $.name( "Foo" );

you can use the more natural syntax

    $.name = "Foo";

Warning

Standard Moose setter features such as type checking, triggers, and coercion will not work on Lvalue attributes. You should only use this plugin when the convenience of the Lvalue attributes outweighs the need for setter features.

Acknowledgements

Inspired by Christopher Brown's MooseX::Meta::Attribute::Lvalue.

Releases

7 releases since Debian 7 (Wheezy); the text changed 4 times.

  1. 7
  2. 8
  3. 9–10
  4. 11
  5. 12–13

Author

Jonathan Swartz <[email protected]>

From libmason-perl 2.24-2 in Debian 13 (Trixie). Parsed by carta from the page's man source.