Risk-Aware AI Code Review for Business-Critical Systems
LiveReview LiveReview Explore LiveReview

Path::Dispatcher::Rule::CodeRef - predicate is any subroutine

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 $_.

Author

       Shawn M Moore, "<sartak at bestpractical.com>"

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.

Name

       Path::Dispatcher::Rule::CodeRef - predicate is any subroutine

Support

       Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=Path-
       Dispatcher> (or bug-Path-Dispatcher@rt.cpan.org <mailto:bug-Path-Dispatcher@rt.cpan.org>).

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!"

Version

       version 1.08

See Also