X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMooseX%2FRole%2FParameterized%2FMeta%2FRole%2FParameterizable.pm;h=6aa19def4ae0e4010934359b8f1d5fb907b5d5c6;hb=58954f3ec91fd6b965a32d9b0d007e44ac1c73ea;hp=0b9b566987b30ea98ff0592414e14a2d3380c7f8;hpb=d2abd7563c59eeffddeb9be74ce797e49d168be3;p=gitmo%2FMooseX-Role-Parameterized.git diff --git a/lib/MooseX/Role/Parameterized/Meta/Role/Parameterizable.pm b/lib/MooseX/Role/Parameterized/Meta/Role/Parameterizable.pm index 0b9b566..6aa19de 100644 --- a/lib/MooseX/Role/Parameterized/Meta/Role/Parameterizable.pm +++ b/lib/MooseX/Role/Parameterized/Meta/Role/Parameterizable.pm @@ -37,13 +37,13 @@ sub construct_parameters { sub generate_role { my $self = shift; - my %args = @_; + + my $parameters = @_ == 1 ? shift + : $self->construct_parameters(@_); confess "A role generator is required to generate roles" unless $self->has_role_generator; - my $parameters = $self->construct_parameters(%args); - my $role = $self->parameterized_role_metaclass->create_anon_role(parameters => $parameters); local $MooseX::Role::Parameterized::CURRENT_METACLASS = $role;