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

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 73:

'=item' outside of any '=over'

Around line 77:

You forgot a '=back' before '=head1'