X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FModule.pm;h=5588f29276ac137757ab326ad4bb9b30ba9e563e;hb=83fd4df5c46993d68fc0c2d84a1faffaef2b3cdd;hp=3069250c9ea82985882bb9be69eda2abaef5a2bd;hpb=71e7b544ac5b18ce7b09b9a95723b1a4e28b4321;p=gitmo%2FMouse.git diff --git a/lib/Mouse/Meta/Module.pm b/lib/Mouse/Meta/Module.pm index 3069250..5588f29 100755 --- a/lib/Mouse/Meta/Module.pm +++ b/lib/Mouse/Meta/Module.pm @@ -114,9 +114,12 @@ sub has_method { defined($method_name) or $self->throw_error('You must define a method name'); - return 1 if $self->{methods}->{$method_name}; + return 1 if $self->{methods}{$method_name}; - my $code = do{ no strict 'refs'; *{$self->{package} . '::' . $method_name}{CODE} }; + my $code = do{ + no strict 'refs'; + *{ $self->{package} . '::' . $method_name }{CODE}; + }; return $code && $self->_code_is_mine($code); } @@ -130,7 +133,7 @@ sub get_method_body{ return $self->{methods}{$method_name} ||= do{ my $code = do{ no strict 'refs'; *{$self->{package} . '::' . $method_name}{CODE} }; - $code && $self->_code_is_mine($code) && $code; + ($code && $self->_code_is_mine($code)) ? $code : undef; }; }