Provided by: libpath-dispatcher-perl_1.05-1_all
NAME
Path::Dispatcher::Match - the result of a successful rule match
SYNOPSIS
my $rule = Path::Dispatcher::Rule::Tokens->new( tokens => [ 'attack', qr/^\w+$/ ], block => sub { my $match = shift; attack($match->pos(2)) }, ); my $match = $rule->match("attack dragon"); # introspection $match->path # "attack dragon" $match->leftover # empty string (populated with prefix rules) $match->rule # $rule $match->positional_captures # ["attack", "dragon"] (decided by the rule) $match->pos(1) # "attack" $match->pos(2) # "dragon" $match->run # attack("dragon")
DESCRIPTION
If a Path::Dispatcher::Rule successfully matches a path, it creates one or more "Path::Dispatcher::Match" objects.
ATTRIBUTES
rule The Path::Dispatcher::Rule that created this match. path The path that the rule matched. leftover The rest of the path. This is populated when the rule matches a prefix of the path. positional_captures Any positional captures generated by the rule. For example, Path::Dispatcher::Rule::Regex populates this with the capture variables. named_captures Any named captures generated by the rule. For example, Path::Dispatcher::Rule::Regex populates this with named captures. parent The parent match object, if applicable (which may be set if this match is the child of, for exampl, a Path::Dispatcher::Rule::Under prefix)
METHODS
run Executes the rule's codeblock with the same arguments. pos($i) Returns the $ith positional capture, 1-indexed.