Devel::Events::Filter::Stringify(3)

NAME
Devel::Events::Filter::Stringify - A simple event filter to prevent leaks

SYNOPSIS
        use Devel::Events::Filter::Stringify;

        my $handler = Devel::Events::Filter::Stringify->new(
                handler => $wrapped_handler,
        );

DESCRIPTION
This event filter will remove all reference data from events.

Events may contain references to the data they are reporting on. If the event data is not thrown away immediately this might affect the flow of the program, causing leaks.

This filter prevents leaks from happenning when an event logger is used by simply stringifying all data.

Note that objects that overload stringification will *not* have their stringification callbacks activated unless "respect_overloading" is set to a true value.

SUBCLASSING
In order ot perform custom dumps of objects that are more descriptive or even useful for log replay, override the "stringify" method.

ATTRIBUTES

respect_overloading
    See "respect_overloading"

METHODS

filter_event @event
    See Devel::Events::Filter.

    Will map the values in @event calling "stringify" on reference elements.

stringify $ref
    Simply delegates to "stringify_value" at this point.

    In the future minimal formatting may be added.

stringify_value $ref
    This method will do either "$_" or "overload::StrVal($_)" depending on the value of "respect_overloading".