Provided by: libpath-dispatcher-perl_1.05-1_all
NAME
Path::Dispatcher::Rule::CodeRef - predicate is any subroutine
SYNOPSIS
my $rule = Path::Dispatcher::Rule::CodeRef->new( matcher => sub { time % 2 }, block => sub { warn "Odd time!" }, ); my $undef = $rule->match("foo"); # even time; no match :) my $match = $rule->match("foo"); # odd time; creates a Path::Dispatcher::Match $rule->run; # warns "Odd time!"
DESCRIPTION
Rules of this class can match arbitrarily complex values. This should be used only when there is no other recourse, because there's no way we can inspect how things match. You're much better off creating a custom subclass of Path::Dispatcher::Rule if at all possible.
ATTRIBUTES
matcher A coderef that returns "undef" if there's no match, otherwise a list of strings (the results). The coderef receives the path object as its argument, and the path string as $_.