NAME
Salvation::MacroProcessor::MethodDescription - Method description object
DESCRIPTION
REQUIRES
METHODS
new
Salvation::MacroProcessor::MethodDescription -> new(
method => $method,
orig_method => $orig_method,
associated_meta => $associated_meta,
previously_associated_meta => $previously_associated_meta,
query => $query,
postfilter => $postfilter,
required_shares => $required_shares,
required_filters => $required_filters,
excludes_filters => $excludes_filters,
imported => $imported,
connector_chain => $connector_chain
)
Constructor.
Returns Salvation::MacroProcessor::MethodDescription instance.
Only method
and associated_meta
arguments are required.
Mostly all arguments documented at this section below, or at smp_add_description
function documentation of Salvation::MacroProcessor module, except imported
argument which is simply a boolean value where true
means "this description is imported from some other class" and false
means "this description is not imported from anywhere".
method
$description -> method();
Returns a name of the description. Usually matches a name of the method being described, though can be different in some cases.
orig_method
$description -> orig_method();
Returns an original name of the description. In example, if the description of method named id
has been imported into another class with prefix parent_
, then such description will have method
equal to parent_id
and orig_method
equal to id
.
associated_meta
$description -> associated_meta();
Returns Moose::Meta::Class or Moose::Meta::Role object instance corresponding to the object which has defined the description.
connector_chain
$description -> connector_chain();
Return an ArrayRef. Each element is another ArrayRef containing two elements:
- class name
-
String. A name of the class where the description has been imported.
- connector name
-
String. A name of the connector which has been used to import description.
This will hold the whole import chain for description being imported.
previously_associated_meta
$description -> previously_associated_meta();
Returns Moose::Meta::Class or Moose::Meta::Role object instance corresponding to the object which has defined the description. It is used when child class inherits a description from its parent and holds the reference to parent's class metaclass.
inherited_description
$description -> inherited_description();
Returns Salvation::MacroProcessor::MethodDescription object instance as it has been defined by a parent class if the description has been inherited.
attr
$description -> attr();
Returns Moose::Meta::Attribute object instance if the description is for attribute instead of plain method.
clone
$description -> clone();
Clones description, returning new-made clone.
excludes_filters
$description -> excludes_filters();
Returns an ArrayRef. Each element is the name of conflicting description.
postfilter
$description -> postfilter( $object, $value );
Returns boolean value. Executes custom description's post-filtering code. See postfilter
argument of Salvation::MacroProcessor::smp_add_description
method.
query
$description -> query( $value );
$description -> query( $shares, $value );
Returns ArrayRef which is a processed query part for this description, customized for given $value
and $shares
as told by query
argument of Salvation::MacroProcessor::smp_add_description
or Salvation::MacroProcessor::Hooks::query_from_attribute
call, if any is applicable.
required_filters
$description -> required_filters();
Returns an ArrayRef. Each element is the name of required description.
required_shares
$description -> required_shares();
Returns an ArrayRef. Each element is the name of required share.