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.