Sugar around moosex::poe event arguments
version 0.215
package Thing; use MooseX::POE::SweetArgs; # declare events like usual event on_success => sub { # unpack args like a Perl sub, not a POE event my ($self, $foo, $bar) = @_; ... POE::Kernel->yield('foo'); ... };
Normally, when using MooseX::POE, subs declared as events need to use \s-1POE\s0 macros for unpacking @_, e.g.:
my ($self, $foo, $bar) = @_[OBJECT, ARG0..$#_];
Using MooseX::POE::SweetArgs as a metaclass lets you avoid this, and just use @_ as normal:
my ($self, $foo, $bar) = @_;
Since the \s-1POE\s0 kernel is a singleton, you can access it using class methods, as shown in the synopsis.
In all other respects, this behaves exactly like MooseX::POE
Chris Prather <[email protected]>
Ash Berlin <[email protected]>
Chris Williams <[email protected]>
Yuval (nothingmuch) Kogman
Torsten Raudssus <[email protected]> <http://www.raudssus.de/>
This software is copyright (c) 2010 by Chris Prather, Ash Berlin, Chris Williams, Yuval Kogman, Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.