Author image Karen Etheridge 🐾 πŸŒ‹πŸ¦‘πŸ‡ΉπŸ‡ΌπŸ‡­πŸ‡°
and 8 contributors

NAME

Path::Dispatcher::Dispatch - a list of matches

VERSION

version 1.08

SYNOPSIS

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

    my $dispatch = $dispatcher->dispatch("attack goblin");

    $dispatch->matches;     # list of matches (in this case, one)
    $dispatch->has_matches; # whether there were any matches

    $dispatch->run; # attacks the goblin

DESCRIPTION

Dispatching creates a dispatch which is little more than a (possibly empty!) list of matches.

ATTRIBUTES

matches

The list of Path::Dispatcher::Match that correspond to the rules that were matched.

METHODS

run

Executes the first match.

Each match's "run" in Path::Dispatcher::Match method is evaluated in scalar context. The return value of this method is a list of these scalars (or the first if called in scalar context).

SUPPORT

Bugs may be submitted through the RT bug tracker (or 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.