NAME
Class::Trait::Config - Trait configuration information storage package.
SYNOPSIS
This package is used internally by Class::Trait to store Trait configuration information. It is also used by Class::Trait::Reflection to gather information about a Trait.
DESCRIPTION
This class is a intentionally very C-struct-like. It is meant to help encapsulate the Trait configuration information in a clean easy to access way.
This class is effectively sealed. It is not meant to be extended, only to be used.
METHODS
- new
-
Creates a new empty Class::Trait::Config object, with fields initialized to empty containers.
- name
-
An
lvalue
subroutine for accessing thename
string field of the Class::Trait::Config object. - sub_traits
-
An
lvalue
subroutine for accessing thesub_traits
array reference field of the Class::Trait::Config object. - requirements
-
An
lvalue
subroutine for accessing therequirements
hash reference field of the Class::Trait::Config object. Note, the requirements field is a hash reference to speed requirement lookup, the values of the hash are simply booleans. - methods
-
An
lvalue
subroutine for accessing themethods
hash reference field of the Class::Trait::Config object. - overloads
-
An
lvalue
subroutine for accessing theoverloads
hash reference field of the Class::Trait::Config object. - conflicts
-
An
lvalue
subroutine for accessing theconflicts
hash reference field of the Class::Trait::Config object. Note, the conflicts field is a hash reference to speed conflict lookup, the values of the hash are simply booleans. - clone
-
Provides deep copy functionality for the Class::Trait::Config object. This will be sure to copy all sub-elements of the object, but not to attempt to copy and subroutine references found.
SEE ALSO
Class::Trait, Class::Trait::Reflection
AUTHOR
Stevan Little <stevan@iinteractive.com>
COPYRIGHT AND LICENSE
Copyright 2004, 2005 by Infinity Interactive, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.