B-Hooks-AtRuntime

 view release on metacpan or  search on metacpan

ppport.h  view on Meta::CPAN

sv_resetpvn|5.017005||Viu
SvRMAGICAL|5.003007||Viu
SvRMAGICAL_off|5.003007||Viu
SvRMAGICAL_on|5.003007||Viu
SvROK|5.003007|5.003007|
SvROK_off|5.003007|5.003007|
SvROK_on|5.003007|5.003007|
SvRV|5.003007|5.003007|
SvRV_const|5.010001||Viu
SvRV_set|5.009003|5.003007|p
sv_rvunweaken|5.027004|5.027004|
sv_rvweaken|5.006000|5.006000|
SvRVx|5.003007||Viu
SvRX|5.009005|5.003007|p
SvRXOK|5.009005|5.003007|p
SV_SAVED_COPY|5.009005||Viu
SvSCREAM|5.003007||Viu
SvSCREAM_off|5.003007||Viu
SvSCREAM_on|5.003007||Viu
sv_setbool|5.035004|5.035004|
sv_setbool_mg|5.035004|5.035004|
sv_setgid|5.019001||Viu

tlib/t/D.pm  view on Meta::CPAN

package t::D;

use B::Hooks::AtRuntime qw/at_runtime after_runtime/;
#use Scalar::Util "weaken";
#use Devel::FindRef;
#use Devel::Peek;
#use Devel::Cycle;

#my @All;
#warn "\@All: " . \@All;
#warn "\@::D: " . \@::D;

sub new { bless [$_[1]], $_[0] }
sub DESTROY { push @::D, @{$_[0] } }
sub import {
    my $d = t::D->new($_[1]);
#    push @All, \$d;
#    weaken $All[-1];
    $_[2] ? after_runtime { $d } : at_runtime { $d };
}

#sub dump_all { 
#    for (@All) {
#        ref or next;
#        #Dump $$_;
#        warn Devel::FindRef::track $$_;
#        find_cycle $$_;
#    }



( run in 2.383 seconds using v1.01-cache-2.11-cpan-65fba6d93b7 )