View on
MetaCPAN
search.cpan.org is shutting down
For details read Perl NOC. After June 25th this page will redirect to MetaCPAN.org
Karen Etheridge > Devel-Events > Devel::Events::Filter::Stringify

Download:
Devel-Events-0.09.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

New  3
Open  1
View/Report Bugs
Module Version: 0.09   Source  

NAME ^

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

VERSION ^

version 0.09

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.

SUPPORT ^

Bugs may be submitted through the RT bug tracker (or bug-Devel-Events@rt.cpan.org).

AUTHOR ^

יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

COPYRIGHT AND LICENCE ^

This software is copyright (c) 2007 by יובל קוג'מן (Yuval Kogman).

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: