יובל קוג'מן (Yuval Kogman)

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.