X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FTypeConstraint.pm;h=d783a7312488d579cab25ff1eee3dba812a29993;hp=ff50844eb31b1b84b582093dfe3f31e92e1bedf5;hb=431657256f423bda264c0cb76c28de72fd879b20;hpb=06a970ab9fb60a4cac5e3f1774cf9a2914c94cc1 diff --git a/lib/Mouse/Meta/TypeConstraint.pm b/lib/Mouse/Meta/TypeConstraint.pm index ff50844..d783a73 100644 --- a/lib/Mouse/Meta/TypeConstraint.pm +++ b/lib/Mouse/Meta/TypeConstraint.pm @@ -86,13 +86,6 @@ sub create_child_type{ ); } -sub name { $_[0]->{name} } -sub parent { $_[0]->{parent} } -sub message { $_[0]->{message} } - -sub _compiled_type_constraint{ $_[0]->{compiled_type_constraint} } - -sub has_coercion{ exists $_[0]->{_compiled_type_coercion} } sub compile_type_constraint{ my($self) = @_; @@ -101,11 +94,11 @@ sub compile_type_constraint{ my @checks; for(my $parent = $self->parent; defined $parent; $parent = $parent->parent){ if($parent->{hand_optimized_type_constraint}){ - push @checks, $parent->{hand_optimized_type_constraint}; + unshift @checks, $parent->{hand_optimized_type_constraint}; last; # a hand optimized constraint must include all the parents } elsif($parent->{constraint}){ - push @checks, $parent->{constraint}; + unshift @checks, $parent->{constraint}; } } @@ -249,7 +242,7 @@ Mouse::Meta::TypeConstraint - The Mouse Type Constraint metaclass =head1 VERSION -This document describes Mouse version 0.38 +This document describes Mouse version 0.40 =head1 DESCRIPTION