=pod

=head1 NAME

Path::Dispatcher::Cookbook - A cookbook for Path::Dispatcher

=head1 RECIPES

=head2 How can I change the path delimiter from a space ' ' to a slash '/'?

When importing the L<Path::Dispatcher::Declarative> sugar, specify the
C<token_delimiter> option for the C<default> group.

    package My::Dispatcher;
    use Path::Dispatcher::Declarative -base, -default => {
        token_delimiter => '/',
    };

Or define a subclass of L<Path::Dispatcher::Declarative> with a
C<token_delimiter> method:

    package Web::Dispatcher;
    use base 'Path::Dispatcher::Declarative';
    
    use constant token_delimiter => '/';
    
    
    package My::Other::Dispatcher;
    use Web::Dispatcher -base;

=head2 How can I do rule chaining (like in Catalyst)?

You can use a C<chain> rule approximate chaining behavior:

    package MyDispatcher;
    use Path::Dispatcher::Declarative -base;

    under show => sub {
        chain {
            print "Displaying ";
        };
        on inventory => sub {
            print "inventory:\n";
            ...
        };
        on score => sub {
            print "score:\n";
            ...
        };
    };

    package main;

    MyDispatcher->run("show inventory"); # "Displaying inventory:\n ..."

    MyDispatcher->run("show score"); # "Displaying score:\n ..."

=cut

