X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMooseX%2FRole%2FParameterized%2FMeta%2FParameter.pm;h=a37f643f6607630766fc6705bcfb2d53ee59b77c;hb=96bc1fffc9f715f21d4189b45f8461bb26a6e2cd;hp=1ae50b76ec4bd0d1c948779f67a971182adef454;hpb=a3af385078d9de87e36ad65d9e349afe1346e7b2;p=gitmo%2FMooseX-Role-Parameterized.git diff --git a/lib/MooseX/Role/Parameterized/Meta/Parameter.pm b/lib/MooseX/Role/Parameterized/Meta/Parameter.pm index 1ae50b7..a37f643 100644 --- a/lib/MooseX/Role/Parameterized/Meta/Parameter.pm +++ b/lib/MooseX/Role/Parameterized/Meta/Parameter.pm @@ -2,6 +2,20 @@ package MooseX::Role::Parameterized::Meta::Parameter; use Moose; extends 'Moose::Meta::Attribute'; +# This doesn't actually do anything because _process_options does not consult +# the default value of "is". hrm. +has '+is' => ( + default => 'ro', +); + +around _process_options => sub { + my $orig = shift; + my ($class, $name, $options) = @_; + + $options->{is} ||= 'ro'; + + $orig->(@_); +}; __PACKAGE__->meta->make_immutable( inline_constructor => 1,