我想发送一个弃用通知,例如
warnings::warnif( 'deprecated', 'function foo is deprecated' );
但我更愿意让它停下来,以便它向调用者报告,而不是实际警告的位置。我可以以carp
某种方式做到这一点吗?
我想发送一个弃用通知,例如
warnings::warnif( 'deprecated', 'function foo is deprecated' );
但我更愿意让它停下来,以便它向调用者报告,而不是实际警告的位置。我可以以carp
某种方式做到这一点吗?
package Foo {
sub bar {
warnings::warnif(deprecated => 'Foo:bar is deprecated');
}
}
use warnings;
# no warnings 'deprecated'; # <-- uncomment this to disable the warning
Foo::bar(); # <-- this is line 9
这应该是这样的:
Foo::bar is deprecated at test.pl line 9.
其实看warnings.pm源码,内部好像使用了Carp.pm。诚然,警告 pragma 本身的文档可能对此更清楚,但perllexwarn确实非常清楚地表明这就是它的使用方式。