我有一个调用该函数的代码。但我不知道这个函数属于哪个模块。我需要它来修改这个功能。
我怎样才能检查它?
The Devel::Peek http://search.cpan.org/perldoc/Devel::Peek模块可以非常方便地获取有关变量的各种信息。您可以用它做的事情之一是转储对子例程的引用并获取它来自的 glob 的名称:
$ perl -MDevel::Peek -MList::Util=first -e'Dump(\&first)'
SV = IV(0x1094e20) at 0x1094e28
REFCNT = 1
FLAGS = (TEMP,ROK)
RV = 0x11183b0
SV = PVCV(0x10ff1f0) at 0x11183b0
REFCNT = 3
FLAGS = (POK,pPOK)
PROTOTYPE = "&@"
COMP_STASH = 0x0
XSUB = 0x7f7ecbdc61b0
XSUBANY = 0
GVGV::GV = 0x11183c8 "List::Util" :: "first"
FILE = "ListUtil.c"
DEPTH = 0
FLAGS = 0x800
OUTSIDE_SEQ = 0
PADLIST = 0x0
OUTSIDE = 0x0 (null)
the GVGV::GV
那里的部分是重要的一点。
另一种解决方案是Sub::Identify
,它实际上只为您提供代码引用的名称。然而,了解Devel::Peek
在许多其他情况下也很方便,所以我首先提到了这一点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)