/usr/share/perl5/Mason/Plugin/LvalueAttributes.pm is in libmason-perl 2.24-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | package Mason::Plugin::LvalueAttributes;
$Mason::Plugin::LvalueAttributes::VERSION = '2.24';
use Moose;
with 'Mason::Plugin';
__PACKAGE__->meta->make_immutable();
1;
__END__
=pod
=head1 NAME
Mason::Plugin::LvalueAttributes - Create lvalue accessors for all rw component
attributes
=head1 SYNOPSIS
<%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>
=head1 DESCRIPTION
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";
=head1 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.
=head1 ACKNOWLEDGEMENTS
Inspired by Christopher Brown's
L<MooseX::Meta::Attribute::Lvalue|MooseX::Meta::Attribute::Lvalue>.
=head1 SEE ALSO
L<Mason|Mason>
=head1 AUTHOR
Jonathan Swartz <swartz@pobox.com>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Jonathan Swartz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|