logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

MooseX::POE::SweetArgs - sugar around MooseX::POE event arguments

Authors

       •   Chris Prather <chris@prather.org>

       •   Ash Berlin <ash@cpan.org>

       •   Chris Williams <chris@bingosnet.co.uk>

       •   Yuval (nothingmuch) Kogman

       •   Torsten Raudssus <torsten@raudssus.de> <http://www.raudssus.de/>

Description

       Normally, when using MooseX::POE, subs declared as events need to use POE 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 POE 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

Name

       MooseX::POE::SweetArgs - sugar around MooseX::POE event arguments

Synopsis

         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');
           ...
         };

Version

       version 0.215

See Also