Perlover Developer > CHI-Cascade-0.26 > CHI::Cascade::Rule

Download:
CHI-Cascade-0.26.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Source   Latest Release: CHI-Cascade-0.283

NAME ^

CHI::Cascade::Rule - a rule class

SYNOPSIS ^

    $cascade->rule(
        target  => qr/^target_(\d+)$/,
        depends => 'base_target',
        code    => sub {
            my ( $rule, $target, $dep_values ) = @_;

            # An execution of $cascade->run('target_12') will pass in code a $rule as:
            #
            # $rule->target     eq      $target
            # $rule->depends    ===     [ 'base_target' ]
            # $rule->qr_params  ===     ( 12 )
            # $rule->params     ==      [ 1, 2, 3 ]
        },
        params  => [ 1, 2, 3 ]
    );

    $cascade->run('target_12');

CONSTRUCTOR ^

An instance of this object is created by CHI::Cascade in "rule" in CHI::Cascade as a following:

    $rule = CHI::Cascade::Rule->new( %options )

The list of options please see in "rule( %options )" in CHI::Cascade method.

DESCRIPTION ^

The instance of this object is passed to "code" in CHI::Cascade, "coderef" in CHI::Cascade, "recomputed" in CHI::Cascade, "depends_catch" in CHI::Cascade by CHI::Cascade as first argument (The API of running this code was changed since v0.16). You can use it object as accessor to some parameters of your currect executed target.

METHODS ^

qr_params

returns a list. It is used for getting a result of =~ operation if target is described for rule through qr// operator.

depends

returns arrayref of dependencies (depends option of rule method) even if one scalar value is passed there (as one dependence). Always is defined even there no defined depends option for rule. If 'depends' is coderef you will get a returned value of one.

target

returns current target as plain text after matching.

params

returns any data of any type what were passed to "params" in CHI::Cascade

cascade

returns reference to CHI::Cascade instance object for this rule.

value_expires

Sets an expire value of target marker in notation described in "DURATION EXPRESSIONS" in CHI. The default is 'never'. You can use this method inside "code" in CHI::Cascade and "recomputed" in CHI::Cascade your callbacks if you want to force recomputing of current target through minimum this time.

AUTHOR ^

This module has been written by Perlover <perlover@perlover.com>

LICENSE ^

This module is free software and is published under the same terms as Perl itself.

SEE ALSO ^

CHI::Cascade

syntax highlighting: