Es geht, sofern dahinter wirklich eine named sub steckt, wir machen soetwas aehnliches in
Catalyst.
Du kannst dir mit hilfe von B den COMP_STASH deiner coderef holen und dann die richtige symboltabelle nach dem passenden namen zur code addresse abgrasen.
Hier mal etwas pseudocode dazu.
sub test { 1 }
my $code = \&test;
use B;
my $class = B::svref_2object($code)->STASH->NAME;
my $name = '';
for my $sym ( values %{ $class . '::' } ) {
if ( *{$sym}{CODE} && *{$sym}{CODE} == $code ) {
$name = *{$sym}{NAME};
}
}
print "Name is $name\n";
Ist aber nicht wirklich was fuer anfaenger, und natuerlich undokumentiert. ;)\n\n
<!--EDIT|sri|1114173732-->