Provided by: libpath-dispatcher-perl_1.08-2_all bug

NAME

       Path::Dispatcher::Rule::Under - rules under a predicate

VERSION

       version 1.08

SYNOPSIS

           my $ticket = Path::Dispatcher::Rule::Tokens->new(
               tokens => [ 'ticket' ],
               prefix => 1,
           );

           my $create = Path::Dispatcher::Rule::Tokens->new(
               tokens => [ 'create' ],
               block  => sub { create_ticket() },
           );

           my $delete = Path::Dispatcher::Rule::Tokens->new(
               tokens => [ 'delete', qr/^\d+$/ ],
               block  => sub { delete_ticket(shift->pos(2)) },
           );

           my $rule = Path::Dispatcher::Rule::Under->new(
               predicate => $ticket,
               rules     => [ $create, $delete ],
           );

           $rule->match("ticket create");
           $rule->match("ticket delete 3");

DESCRIPTION

       Rules of this class have two-phase matching: if the predicate is matched, then the
       contained rules are matched. The benefit of this is less repetition of the predicate, both
       in terms of code and in matching it.

ATTRIBUTES

   predicate
       A rule (which must match prefixes) whose match determines whether the contained rules are
       considered. The leftover path of the predicate is used as the path for the contained
       rules.

   rules
       A list of rules that will be try to be matched only if the predicate is matched.

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>).

AUTHOR

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

COPYRIGHT AND LICENSE

       This software is copyright (c) 2020 by Shawn M Moore.

       This is free software; you can redistribute it and/or modify it under the same terms as
       the Perl 5 programming language system itself.