X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FRole.pm;h=317adbc5cc69853ac5765b093314f6d40e7f0e6c;hp=ec08a5bddf4c3568fd0c957325a41b0967f4f06f;hb=bc69ee88207ce5c53f5c02dbd44cfabfbe6bae70;hpb=01afd8ffba9b9783e84c6cfc8ba45e11a0f5d8f4 diff --git a/lib/Mouse/Meta/Role.pm b/lib/Mouse/Meta/Role.pm index ec08a5b..317adbc 100644 --- a/lib/Mouse/Meta/Role.pm +++ b/lib/Mouse/Meta/Role.pm @@ -1,8 +1,6 @@ package Mouse::Meta::Role; -use strict; -use warnings; +use Mouse::Util qw(:meta not_supported english_list); # enables strict and warnings -use Mouse::Util qw(:meta not_supported english_list get_code_info); use Mouse::Meta::Module; our @ISA = qw(Mouse::Meta::Module); @@ -18,10 +16,12 @@ sub _construct_meta { $args{required_methods} ||= []; $args{roles} ||= []; -# return Mouse::Meta::Class->initialize($class)->new_object(%args) -# if $class ne __PACKAGE__; + my $self = bless \%args, ref($class) || $class; + if($class ne __PACKAGE__){ + $self->meta->_initialize_object($self, \%args); + } - return bless \%args, ref($class) || $class; + return $self; } sub create_anon_role{