警告:: warnif('弃用'...)与鲤鱼?

时间:2013-08-01 08:26:25

标签: perl

我想发送弃用通知,例如

warnings::warnif( 'deprecated', 'function foo is deprecated' );

但是我更喜欢把它哄起来,以便向呼叫者报告而不是实际警告的位置。我可以用carp以某种方式执行此操作吗?

1 个答案:

答案 0 :(得分:1)

你有tried it?

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 source,它似乎在内部使用Carp.pm。不可否认,警告pragma本身的文档可能更清楚,但是perllexwarn确实很清楚这就是它的用法。