有没有办法确定Perl B :: LOGOP对象所指的运算符到底是什么?

时间:2011-08-05 03:45:59

标签: perl

通过使用B,我看到B::LOGOP对象(称之为“$op”)引用&&and运算符在调用$op->name时都返回“和”。是否可以通过检查$op

来确定LOGOP所指的运算符

1 个答案:

答案 0 :(得分:1)

我不是perl内部的专家,但是LOGOP指的是逻辑运算符组。所以我不认为你可以在不检查名称的情况下了解个别操作员。即使B::Terse也会显示它:

perl -MO=Terse -e '$a && $b'

节目:

....
        LOGOP (0x198ad94) and
            UNOP (0x198adec) null [15]
                PADOP (0x198ae08) gvsv  GV (0x187bb9c) *a
            UNOP (0x198adb4) null [15]
                PADOP (0x198add0) gvsv  GV (0x187bc9c) *b