Default parameters to read-only
[gitmo/MooseX-Role-Parameterized.git] / lib / MooseX / Role / Parameterized / Meta / Parameter.pm
CommitLineData
e476d78d 1package MooseX::Role::Parameterized::Meta::Parameter;
2use Moose;
3extends 'Moose::Meta::Attribute';
4
96bc1fff 5# This doesn't actually do anything because _process_options does not consult
6# the default value of "is". hrm.
7has '+is' => (
8 default => 'ro',
9);
10
11around _process_options => sub {
12 my $orig = shift;
13 my ($class, $name, $options) = @_;
14
15 $options->{is} ||= 'ro';
16
17 $orig->(@_);
18};
e476d78d 19
a3af3850 20__PACKAGE__->meta->make_immutable(
21 inline_constructor => 1,
22 constructor_name => "_new",
23);
e476d78d 24no Moose;
25
261;
27