如何解决无论如何,有没有办法告诉软件包启用了哪些功能?
假设我要确保实现接口的人员具有特定的实验功能,
package Foo {
use experimental "signatures";
}
是否可以确定Foo启用了哪些功能,或更具体地说是“实验功能”?
解决方法
否,因为Foo未启用功能;功能与词汇范围相关,而不与软件包相关。
该词法范围内或从该词法范围调用的代码在理论上可以使用caller中的hashhash返回值来测试启用的功能,但是该值本质上是未记录的内部结构。该范围之外的代码必须使用类似PadWalker的代码。
如果只想检查某些文件中是否存在特定功能,则更好的方法是编写perlcritic规则。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。