X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FTypeConstraint%2FRole.pm;h=fde9f067102cdf5bf7d56c2b8f69d20475904f2d;hb=50bc108bca305ced4df63a569c9b5f3474f71914;hp=dc5029c7b0f5daeb74515bd6c07f76d7af7199d3;hpb=fb4fcfee39263ca3983e28f840f38185282d4327;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/TypeConstraint/Role.pm b/lib/Moose/Meta/TypeConstraint/Role.pm index dc5029c..fde9f06 100644 --- a/lib/Moose/Meta/TypeConstraint/Role.pm +++ b/lib/Moose/Meta/TypeConstraint/Role.pm @@ -7,7 +7,7 @@ use metaclass; use Scalar::Util 'blessed'; use Moose::Util::TypeConstraints (); -our $VERSION = '0.57'; +our $VERSION = '0.59'; $VERSION = eval $VERSION; our $AUTHORITY = 'cpan:STEVAN'; @@ -59,6 +59,7 @@ sub equals { my $other = Moose::Util::TypeConstraints::find_type_constraint($type_or_name); + return unless defined $other; return unless $other->isa(__PACKAGE__); return $self->role eq $other->role; @@ -82,6 +83,8 @@ sub is_subtype_of { my $type = Moose::Util::TypeConstraints::find_type_constraint($type_or_name_or_role); + return unless defined $type; + if ( $type->isa(__PACKAGE__) ) { # if $type_or_name_or_role isn't a role, it might be the TC name of another ::Role type # or it could also just be a type object in this branch