我知道“can”方法检查包是否具有“some_method”方法。但是,“->(animal => $x)”部分发生了什么?
$z = __PACKAGE__->can("some_method")->(animal => $x)
Run Code Online (Sandbox Code Playgroud)
can()如果存在,将返回对方法的引用,然后将使用“取消引用箭头”取消引用该方法。您必须将其包装到 eval 中,否则如果“some_method”不存在,则会引发异常。在此处阅读更多信息:
关于can():perldoc UNIVERSAL
关于取消引用子程序: perldoc perlref
| 归档时间: |
|
| 查看次数: |
142 次 |
| 最近记录: |