NAME
Moose::Meta::TypeConstraint::Role - Role/TypeConstraint parallel hierarchy
DESCRIPTION
This class represents type constraints for a role.
INHERITANCE
Moose::Meta::TypeConstraint::Role
is a subclass of Moose::Meta::TypeConstraint.
METHODS
- Moose::Meta::TypeConstraint::Role->new(%options)
-
This creates a new role type constraint based on the given
%options
.It takes the same options as its parent, with two exceptions. First, it requires an additional option,
role
, which is name of the constraint's role. Second, it automatically sets the parent to theObject
type.The constructor also overrides the hand optimized type constraint with one it creates internally.
- $constraint->role
-
Returns the role name associated with the constraint.
- $constraint->parents
-
Returns all the type's parent types, corresponding to the roles that its role does.
- $constraint->is_subtype_of($type_name_or_object)
-
If the given type is also a role type, then this checks that the type's role does the other type's role.
Otherwise it falls back to the implementation in Moose::Meta::TypeConstraint.
- $constraint->create_child_type(%options)
-
This returns a new Moose::Meta::TypeConstraint object with the type as its parent.
Note that it does not return a
Moose::Meta::TypeConstraint::Role
object!
BUGS
See "BUGS" in Moose for details on reporting bugs.
AUTHOR
Yuval Kogman <nothingmuch@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2006-2010 by Infinity Interactive, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.