NAME
Mouse::Meta::Attribute - attribute metaclass
METHODS
new %args -> Mouse::Meta::Attribute
Instantiates a new Mouse::Meta::Attribute. Does nothing else.
create OwnerClass, AttributeName, %args -> Mouse::Meta::Attribute
Creates a new attribute in OwnerClass. Accessors and helper methods are installed. Some error checking is done.
name -> AttributeName
associated_class -> OwnerClass
is_required -> Bool
default -> Item
has_default -> Bool
is_lazy -> Bool
predicate -> MethodName | Undef
has_predicate -> Bool
clearer -> MethodName | Undef
has_clearer -> Bool
handles -> { LocalName => RemoteName }
has_handles -> Bool
is_weak_ref -> Bool
init_arg -> Str
type_constraint -> Str
has_type_constraint -> Bool
trigger => CODE | Undef
has_trigger -> Bool
builder => MethodName | Undef
has_builder -> Bool
is_lazy_build => Bool
should_auto_deref -> Bool
Informational methods.
verify_against_type_constraint Item -> 1 | ERROR
Checks that the given value passes this attribute's type constraint. Returns 1 on success, otherwise confess
es.
canonicalize_args Name, %args -> %args
Canonicalizes some arguments to create. In particular, lazy_build
is canonicalized into lazy
, builder
, etc.
validate_args Name, \%args -> 1 | ERROR
Checks that the arguments to create the attribute (ie those specified by has
) are valid.
clone_parent OwnerClass, AttributeName, %args -> Mouse::Meta::Attribute
Creates a new attribute in OwnerClass, inheriting options from parent classes. Accessors and helper methods are installed. Some error checking is done.
get_parent_args OwnerClass, AttributeName -> Hash
Returns the options that the parent class of OwnerClass
used for attribute AttributeName
.