Smalltalk 如何查找MessageNotUnderstanding消息链

Smalltalk 如何查找MessageNotUnderstanding消息链,smalltalk,pharo,Smalltalk,Pharo,下面是我前面的例子 假设现在的代码是这样的 Transcript explode implode andBecomeNuclear. 在这种情况下,Pharo将发送3个MNU:1爆炸2内爆3并成为核 重写doesNotUnderstand:在这里没有帮助,因为我需要完整的消息链。这意味着我希望它不仅给我一条消息,而且给我所有3条消息,直到它找到结束pharo命令的时间 我怎么做到的 首先,Pharo不会发送3条消息。按照优先级顺序,它将发送explode,然后使用DNU停止,或者将内爆发送到返

下面是我前面的例子

假设现在的代码是这样的

Transcript explode implode andBecomeNuclear.
在这种情况下,Pharo将发送3个MNU:1爆炸2内爆3并成为核

重写doesNotUnderstand:在这里没有帮助,因为我需要完整的消息链。这意味着我希望它不仅给我一条消息,而且给我所有3条消息,直到它找到结束pharo命令的时间


我怎么做到的

首先,Pharo不会发送3条消息。按照优先级顺序,它将发送explode,然后使用DNU停止,或者将内爆发送到返回的对象。您所能做的是以一种将消息存储在队列中并返回self的方式定义DNU。我不知道如何检索语句末尾的所有链。最简单的方法是定义一些消息链,它将返回整个队列。

首先,Pharo不会发送3条消息。按照优先级顺序,它将发送explode,然后使用DNU停止,或者将内爆发送到返回的对象。您所能做的是以一种将消息存储在队列中并返回self的方式定义DNU。我不知道如何检索语句末尾的所有链。最简单的方法是定义一些类似于链的消息,它将返回整个队列。

谢谢Uko,是的,我也在考虑这样做,但我不知道如何检测pharo语句何时结束。我还是投了一票:如果你是这个意思的话,你不能检测到“.”。通常,我们在最后有一条特殊的消息,它在类中真正实现。例如,Senduko,是的,我也在考虑做同样的事情,但我不知道如何检测pharo声明何时结束。我还是投了一票:如果你是这个意思的话,你不能检测到“.”。通常,我们在最后有一条特殊的消息,它在类中真正实现。例如,发送