You can also name the subroutine by using Sub::Name:
The benefit of this is that you don't name all anonymous subroutines that are called inside this anonymous subroutine.use Carp; use Sub::Name; subname( my_anonymous_sub => sub { croak("Whee!"); } )->(); __END__ Whee! at - line 6 main::my_anonymous_sub() called at - line 8
use Carp; use Sub::Name; subname( my_anonymous_sub => sub { sub { carp("subname"); }->() } )->(); sub { local *__ANON__ = 'my_anonymous_sub'; sub { carp("*__ANON__"); }->() }->(); __END__ subname at - line 7 main::__ANON__() called at - line 8 main::my_anonymous_sub() called at - line 10 *__ANON__ at - line 15 main::my_anonymous_sub() called at - line 16 main::my_anonymous_sub() called at - line 17
lodin
In reply to Re: Named evals? (Sub::Name)
by lodin
in thread Named evals?
by Ovid
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |