我想获取调用方法的名称。我尝试调用者,它在大多数情况下都可以正常工作。但是当方法从父包继承时,结果不是我所期望的。以下是示例:
package Caller;
sub output_caller { #output the calling method's name
my @stacks = caller(1);
print $stacks[3];
}
package Foo;
sub foo {
Caller::output_caller();
}
package Bar;
use base 'Foo';
Bar->foo();
输出是
Foo::foo
我期望的是
Bar::foo
是否有可能获得 Bar::foo?