当我在以下代码中将MetaLink添加到所有发送节点时,Metalink on#ifTrue:
无效:
aMethod
10 = 11
ifTrue: [ ^ 3 ]
添加MetaLink的代码:
ast sendNodes do: [ :n |
n link: (MetaLink new
metaObject: [ :node |
Transcript show: node asString; cr ];
arguments: #(node);
selector: #value:;
control: #before;
yourself) ]
谁能解释为什么会这样?如何在#ifTrue:
发送中添加MetaLink ?
感谢@ LeandroCaniglia的评论,这是由于编译优化。
您可以取消签Inline If
入Opal Compiler settings
并重新编译该方法。
重新编译后,重新安装Metalinks,您将看到#ifTrue:
一条消息呼叫。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句