debian man page for moosex::multimethods

Query: moosex::multimethods

OS: debian

Section: 3pm

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

MooseX::MultiMethods(3pm)				User Contributed Perl Documentation				 MooseX::MultiMethods(3pm)

NAME
MooseX::MultiMethods - Multi Method Dispatch based on Moose type constraints
VERSION
version 0.10
SYNOPSIS
package Paper; use Moose; package Scissors; use Moose; package Rock; use Moose; package Lizard; use Moose; package Spock; use Moose; package Game; use Moose; use MooseX::MultiMethods; multi method play (Paper $x, Rock $y) { 1 } multi method play (Paper $x, Spock $y) { 1 } multi method play (Scissors $x, Paper $y) { 1 } multi method play (Scissors $x, Lizard $y) { 1 } multi method play (Rock $x, Scissors $y) { 1 } multi method play (Rock $x, Lizard $y) { 1 } multi method play (Lizard $x, Paper $y) { 1 } multi method play (Lizard $x, Spock $y) { 1 } multi method play (Spock $x, Rock $y) { 1 } multi method play (Spock $x, Scissors $y) { 1 } multi method play (Any $x, Any $y) { 0 } my $game = Game->new; $game->play(Paper->new, Rock->new); # 1, Paper covers Rock $game->play(Spock->new, Paper->new); # 0, Paper disproves Spock $game->play(Spock->new, Scissors->new); # 1, Spock smashes Scissors
DESCRIPTION
This module provides multi method dispatch based on Moose type constraints. It does so by providing a "multi" keyword that extends the "method" keyword provided by MooseX::Method::Signatures. When invoking a method declared as "multi" a matching variant is being searched in all the declared multi variants based on the passed parameters and the declared type constraints. If a variant has been found, it will be invoked. If no variant could be found, an exception will be thrown.
AUTHOR
Florian Ragwitz <rafl@debian.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Florian Ragwitz. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. perl v5.10.1 2010-01-03 MooseX::MultiMethods(3pm)
Related Man Pages
moosex::types::moose5.18(3pm) - mojave
moosex::types::moose(3pm) - mojave
moose::cookbook::extending::debugging_baseclassrole(3) - osx
mason::component::moose(3pm) - debian
moosex::types::moose(3pm) - debian
Similar Topics in the Unix Linux Community
Need help again?
Remove Line Break
whats wrong with this?
Not able to execute the method based on OS in JAVA
Grep multi line with keyword ?