The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
NAME
    Devel::Leak::Cb - Detect leaked callbacks

VERSION
    Version 0.04

SYNOPSIS
        use Devel::Leak::Cb;

        AnyEvent->timer( after => 1, cb => cb {
        ...
        });

        # If $ENV{DEBUG_CB} is true and callback not destroyed till END, the you'll be noticed

DESCRIPTION
    By default, cb { .. } will be rewritten as sub { .. } using
    Devel::Declare and will give no additional cost at runtime

    When $ENV{DEBUG_CB} will be set, then all cb {} declarations will be
    counted, and if some of them will not be destroyed till the END stage,
    you'll be warned

EXPORT
    Exports a single function: cb {}, which would be rewritten as sub {}
    when $ENV{DEBUG_CB} is not in effect

    If "DEBUG_CB" > 1 and Devel::FindRef is installed, then output will
    include reference tree of leaked callbacks

FUNCTIONS
  cb {}
    Create anonymous callback

        my $cb = cb {};

  cb name {}
    Create named callback with static name (Have no effect without
    $ENV{DEBUG_CB})

        my $cb = cb mycallback {};

  cb $name {}
    Create named callback with dynamic name (Have no effect without
    $ENV{DEBUG_CB}) $name could me only simple scalar identifier, without
    any special symbols

        my $cb = cb $name {};
        my $cb = cb $full::name {};

  cb 'name' {}
    Create named callback with dynamic name (Have no effect without
    $ENV{DEBUG_CB}) Currently supported only ' and ". Quote-like operators
    support will be later

        my $cb = cb 'name' {};
        my $cb = cb "name.$val" {};

  COUNT
        You may call C<Devel::Leak::Cb::COUNT()> Manually to check state. All leaked callbacks will be warned. Noop without C<$ENV{DEBUG_CB}>

AUTHOR
    Mons Anderson, "<mons at cpan.org>"

BUGS
    Please report any bugs or feature requests to "bug-devel-leak-cb at
    rt.cpan.org", or through the web interface at
    <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Devel-Leak-Cb>. I will
    be notified, and then you'll automatically be notified of progress on
    your bug as I make changes.

SUPPORT
    You can find documentation for this module with the perldoc command.

        perldoc Devel::Leak::Cb

    You can also look for information at:

    *   RT: CPAN's request tracker

        <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Devel-Leak-Cb>

COPYRIGHT & LICENSE
    Copyright 2009 Mons Anderson, all rights reserved.

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