Devel::Events::Filter(3)

NAME
Devel::Events::Filter - A handler role that filters events and delegates to another.

SYNOPSIS
        package MyFilter;
        use Moose;

        with qw/Devel::Events::Filter/;

        sub filter_event {
                my ( $self, @event ) = @_;

                return (map { ... } @event);
        }

DESCRIPTION
This role allows you to build event filters easily:

USAGE
To use this role you must provide the "filter_event" method.

This role provides an optional "handler" attribute and a "new_event" method, and does the Devel::Events::Handler role implicitly.

If a sub handler was provided then the filtered event will be delegated to it, but due to the usefulness of filters as debugging aids this is currently optional.

In the future this design choice might change.

ATTRIBUTES

handler
    A Devel::Events::Handler to delegate to.

METHODS

new_event @event
    Filters the event through "filter_event".

    If "handler" is set, delegates the filtered event to the handler. If not "no_handler_error" is called instead.

no_handler_error @filtered_event
    This method is called if no handler is present. It is a stub, but in the future it may raise an error.

SEE ALSO
Devel::Events, Devel::Events::Handler, Devel::Events::Filter::Stamp, Devel::Events::Filter::Warn

POD ERRORS
Hey! The above document had some coding errors, which are explained below:

Around line 73:
    '=item' outside of any '=over'

Around line 77:
    You forgot a '=back' before '=head1'