table of contents
Tangence::Meta::Class(3pm) | User Contributed Perl Documentation | Tangence::Meta::Class(3pm) |
NAME¶
"Tangence::Meta::Class" - structure representing one "Tangence" class
DESCRIPTION¶
This data structure object stores information about one Tangence class. Once constructed and defined, such objects are immutable.
CONSTRUCTOR¶
new¶
$class = Tangence::Meta::Class->new( name => $name )
Returns a new instance representing the given name.
define¶
$class->define( %args )
Provides a definition for the class.
- methods => HASH
- events => HASH
- properties => HASH
- Optional HASH references containing metadata about methods, events and properties, as instances of Tangence::Meta::Method, Tangence::Meta::Event or Tangence::Meta::Property.
- superclasses => ARRAY
- Optional ARRAY reference containing superclasses as "Tangence::Meta::Class" references.
ACCESSORS¶
defined¶
$defined = $class->defined
Returns true if a definintion for the class has been provided using "define".
name¶
$name = $class->name
Returns the name of the class
perlname¶
$perlname = $class->perlname
Returns the perl name of the class. This will be the Tangence name, with dots replaced by double colons ("::").
direct_superclasses¶
@superclasses = $class->direct_superclasses
Return the direct superclasses in a list of "Tangence::Meta::Class" references.
direct_methods¶
$methods = $class->direct_methods
Return the methods that this class directly defines (rather than inheriting from superclasses) as a HASH reference mapping names to Tangence::Meta::Method instances.
direct_events¶
$events = $class->direct_events
Return the events that this class directly defines (rather than inheriting from superclasses) as a HASH reference mapping names to Tangence::Meta::Event instances.
direct_properties¶
$properties = $class->direct_properties
Return the properties that this class directly defines (rather than inheriting from superclasses) as a HASH reference mapping names to Tangence::Meta::Property instances.
AGGREGATE ACCESSORS¶
The following accessors inspect the full inheritance tree of this class and all its superclasses
superclasses¶
@superclasses = $class->superclasses
Return all the superclasses in a list of unique "Tangence::Meta::Class" references.
methods¶
$methods = $class->methods
Return all the methods available to this class as a HASH reference mapping names to Tangence::Meta::Method instances.
method¶
$method = $class->method( $name )
Return the named method as a Tangence::Meta::Method instance, or "undef" if no such method exists.
events¶
$events = $class->events
Return all the events available to this class as a HASH reference mapping names to Tangence::Meta::Event instances.
event¶
$event = $class->event( $name )
Return the named event as a Tangence::Meta::Event instance, or "undef" if no such event exists.
properties¶
$properties = $class->properties
Return all the properties available to this class as a HASH reference mapping names to Tangence::Meta::Property instances.
property¶
$property = $class->property( $name )
Return the named property as a Tangence::Meta::Property instance, or "undef" if no such property exists.
AUTHOR¶
Paul Evans <leonerd@leonerd.org.uk>
2024-09-13 | perl v5.38.2 |