Chad Granum > MooseX-LeakCheck-0.003 > MooseX::LeakCheck

Download:
MooseX-LeakCheck-0.003.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.003   Source  

NAME ^

MooseX-LeakCheck - Check for leaky attributes

DESCRIPTION ^

Define an attribute that you know should be the only remaining ref to an object when your instance is destroyed. On destruction verify the attribute is also destroyed.

SYNOPSIS ^

    package Foo;
    use MooseX::LeakCheck;

    has bar => (
        is => 'ro',
        default => sub {[]},
        leak_check => 1,
    );

    has baz => (
        is => 'ro',
        default => sub {[]},
        leak_check => sub {
            my $self = shift;
            my ( $attr_name, $ref ) = @_;
            ...
        }
    );

    has boo => (
        is => 'ro',
        default => sub {[]},
        # Defaults to no
        leak_check => 0,
    );

    1;

ATTRIBUTE PROPERTIES ^

leak_check => $BOOL
leak_check => sub { ... }

Turn on leak checking for the attribute when set to true. Generates a warning when a leak is detected. Alternatively you may provide a coderef callback to run when a leak is detected.

The coderef gets the following args: ( $self, $attr_name, \$self->{$attr_name})

AUTHORS ^

Chad Granum exodist7@gmail.com

COPYRIGHT ^

Copyright (C) 2012 Chad Granum

MooseX::LeakCheck is free software; Standard perl licence.

MooseX::LeakCheck is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.

syntax highlighting: