Perl – 操作码的操作码?
发布时间:2020-12-15 23:34:42 所属栏目:大数据 来源:网络整理
导读:有没有办法创建perl源代码,如果我有操作码? 例如 perl -MO=Concise -e "print 123" 将输出操作码: 6 @ leave[1 ref] vKP/REFC -(end)1 0 enter -22 ; nextstate(main 1 -e:1) v:{ -35 @ print vK -63 0 pushmark s -44 $ const[IV 123] s -5 我想以某种方
有没有办法创建perl源代码,如果我有操作码?
例如 perl -MO=Concise -e "print 123" 将输出操作码: 6 <@> leave[1 ref] vKP/REFC ->(end) 1 <0> enter ->2 2 <;> nextstate(main 1 -e:1) v:{ ->3 5 <@> print vK ->6 3 <0> pushmark s ->4 4 <$> const[IV 123] s ->5 我想以某种方式扭转这种局面. 解决方法
如果通过“拥有操作码”,则表示“拥有操作码树”
虽然B :: Concise试图准确表示操作码树,但B :: Deparse采用操作码树并从中生成源代码. $perl -MO=Deparse -e'$x && print' print $_ if $x; -e syntax OK 虽然有一些限制,但它还是相当不错的. 如果通过“拥有操作码”,则表示“具有B :: Concise的输出” 鉴于B :: Concise试图非常完整,它可能是可能的,但我认为缺少一些信息.我很确定没有什么可以尝试在CPAN上做到这一点,因为我从来没有听说过破坏它(你会期望经常发生的事情). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |