יובל קוג'מן (Yuval Kogman) > Devel-Events-Filter-Size-0.03 > Devel::Events::Filter::Size

Download:
Devel-Events-Filter-Size-0.03.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.03   Source  

NAME ^

Devel::Events::Filter::Size - Add Devel::Size info to event data.

SYNOPSIS ^

        my $f = Devel::Events::Filter::Size->new(
                handler => $h,
                fields => [qw/foo bar gorch/], # calculate the size of these fields
        );

        # OR

        my $f = Devel::Events::Filter::Size->new(
                handler => $h,
                fields => "object", # just one field
        );

DESCRIPTION ^

This class uses Devel::Size and optionally Devel::Size::Report to provide size information for data found inside events.

Typical usage would be to apply it to the object field in conjunction with Devel::Events::Objects.

ATTRIBUTES ^

fields

The fields whose size to check.

Can be a single string, or an array reference.

When undefined all fields will be computed.

one_field

This parameter controls the placement of the results (top level, or under the sizes field).

It defaults to true when fields is a scalar, and false in any other situation.

no_total

When true, "total_size" in Devel::Size will not be used.

Defaults to false.

no_report

When true, Devel::Size::Report will not be used.

Defaults to true.

METHODS ^

filter_event

When is_one_field returns a true value, this method will add a size, and optionally a total_size and size_report field to the event. Otherwise it will add several of these to the sizes field, keyed by the refaddr of the value.

Only reference types will have their sizes computed.

is_one_field

Internal method. Used by filter_event

get_field

Returns the fields whose sizes need computing. This is either all fields if fields is undef, or the specified fields.

get_fields

Returns only one field. Used when is_one_field is true.

calculate_sizes

Return an entry with the size, total_size and size_report results.

calculate_size

See "size" in Devel::Size

calculate_total_size

Optionally uses "total_size" in Devel::Size, depending on the value of no_total.

calculate_size_report

Optionally loads Devel::Size::Report and uses uses "report_size" in Devel::Size::Report, depending on the value of no_report.

SEE ALSO ^

Devel::Events, Devel::Size, Devel::Events::Filter

AUTHOR ^

Yuval Kogman <nothingmuch@woobling.org>

COPYRIGHT & LICENSE ^

        Copyright (c) 2007 Yuval Kogman. All rights reserved
        This program is free software; you can redistribute it and/or modify it
        under the terms of the MIT license or the same terms as Perl itself.
syntax highlighting: