Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

path::dispatcher::rule::under(3pm) [debian man page]

Path::Dispatcher::Rule::Under(3pm)			User Contributed Perl Documentation			Path::Dispatcher::Rule::Under(3pm)

NAME
Path::Dispatcher::Rule::Under - rules under a predicate 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. perl v5.12.4 2011-08-30 Path::Dispatcher::Rule::Under(3pm)

Check Out this Related Man Page

Path::Dispatcher::Declarative(3pm)			User Contributed Perl Documentation			Path::Dispatcher::Declarative(3pm)

NAME
Path::Dispatcher::Declarative - sugary dispatcher SYNOPSIS
package MyApp::Dispatcher; use Path::Dispatcher::Declarative -base; on score => sub { show_score() }; on ['wield', qr/^w+$/] => sub { wield_weapon($2) }; rewrite qr/^inv/ => "display inventory"; under display => sub { on inventory => sub { show_inventory() }; on score => sub { show_score() }; }; package Interpreter; MyApp::Dispatcher->run($input); DESCRIPTION
Jifty::Dispatcher rocks! KEYWORDS
dispatcher -> Dispatcher Returns the Path::Dispatcher object for this class; the object that the sugar is modifying. This is useful for adding custom rules through the regular API, and inspection. dispatch path -> Dispatch Invokes the dispatcher on the given path and returns a Path::Dispatcher::Dispatch object. Acts as a keyword within the same package; otherwise as a method (since these declarative dispatchers are supposed to be used by other packages). run path, args Performs a dispatch then invokes the "run" in Path::Dispatcher::Dispatch method on it. on path => sub {} Adds a rule to the dispatcher for the given path. The path may be: a string This is taken to mean a single token; creates an Path::Dispatcher::Rule::Tokens rule. an array reference This is creates a Path::Dispatcher::Rule::Tokens rule. a regular expression This is creates a Path::Dispatcher::Rule::Regex rule. a code reference This is creates a Path::Dispatcher::Rule::CodeRef rule. under path => sub {} Creates a Path::Dispatcher::Rule::Under rule. The contents of the coderef should be nothing other "on" and "under" calls. then sub { } Creates a Path::Dispatcher::Rule::Always rule that will continue on to the next rule via "next_rule" The only argument is a coderef that processes normally (like on). NOTE: You *can* avoid running a following rule by using "last_rule". An example: under show => sub { then { print "Displaying "; }; on inventory => sub { print "inventory: "; ... }; on score => sub { print "score: "; ... }; AUTHOR
Shawn M Moore, "<sartak at bestpractical.com>" BUGS
Please report any bugs or feature requests to "bug-path-dispatcher-declarative at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Path-Dispatcher-Declarative>. COPYRIGHT &; LICENSE Copyright 2008-2010 Best Practical Solutions. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2010-11-02 Path::Dispatcher::Declarative(3pm)
Man Page