coerce
find_type_constraint
+ register_type_constraint
)],
);
return $TYPE{$spec};
}
+sub register_type_constraint {
+ my($constraint) = @_;
+ Carp::croak("No type supplied / type is not a valid type constraint")
+ unless Mouse::Util::is_a_type_constraint($constraint);
+ my $name = $constraint->name;
+ Carp::croak("can't register an unnamed type constraint")
+ unless defined $name;
+ return $TYPE{$name} = $constraint;
+}
+
sub find_or_parse_type_constraint {
my($spec) = @_;
return $spec if Mouse::Util::is_a_type_constraint($spec);