X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FModule.pm;h=0545f362aa12e25b437cf0f4c477dfc4e937d76d;hp=0bebd8fc0ff5405b4cf13f652c8c6a4e3d52f327;hb=134daa672a270f9144185a6d245085558fceb210;hpb=eb88905f17a3087b826253807b2e4bc839a977d8 diff --git a/lib/Mouse/Meta/Module.pm b/lib/Mouse/Meta/Module.pm index 0bebd8f..0545f36 100755 --- a/lib/Mouse/Meta/Module.pm +++ b/lib/Mouse/Meta/Module.pm @@ -102,7 +102,7 @@ sub _code_is_mine { # taken from Class::MOP::Class my ( $code_package, $code_name ) = get_code_info($code); - return $code_package && $code_package eq $self->name + return $code_package && $code_package eq $self->{package} || ( $code_package eq 'constant' && $code_name eq '__ANON__' ); } @@ -110,7 +110,8 @@ sub has_method { my($self, $method_name) = @_; return 1 if $self->{methods}->{$method_name}; - my $code = $self->name->can($method_name); + + my $code = $self->{package}->can($method_name); return $code && $self->_code_is_mine($code); } @@ -299,7 +300,11 @@ __END__ =head1 NAME -Mouse::Meta::Module - Common base class for Mouse::Meta::Class and Mouse::Meta::Role +Mouse::Meta::Module - The base class for Mouse::Meta::Class and Mouse::Meta::Role + +=head1 SEE ALSO + +L =cut