30906c9a2c
dispatch. PR: ports/100375 Submitted by: Gea-Suan Lin <gslin at gslin.org>
17 lines
524 B
Text
17 lines
524 B
Text
You can define multimethods with the "multi" declarator:
|
|
|
|
use Class::Multimethods::Pure;
|
|
|
|
multi collide => ('Bullet', 'Ship') => sub {
|
|
my ($a, $b) = @_; ...
|
|
};
|
|
|
|
multi collide => ('Ship', 'Asteroid') => sub {
|
|
my ($a, $b) = @_; ...
|
|
};
|
|
|
|
It is usually wise to put such declarations within a BEGIN block, so
|
|
they behave more like Perl treats subs (you can call them without
|
|
parentheses and you can use them before you define them).
|
|
|
|
WWW: http://search.cpan.org/dist/Class-Multimethods-Pure/
|