5

假设我想看看“复制”是如何在 Dictionary 类中实现的。目前我使用系统浏览器并手动遍历继承层次结构(自下而上),直到找到实现给定消息的类。工作区是否有一条线,可以在正确的位置打开系统浏览器?

4

4 回答 4

6
( SomeClass whichClassIncludesSelector: #initialize ) browse

这将浏览实现消息#initialize 的类。

于 2012-02-29T06:42:35.877 回答
6

就个人而言,我只需在工作区中键入#selector,突出显示它,然后按 alt+m 即可调出消息的所有实现者。比输入所有代码要快得多。

于 2012-02-29T16:40:10.183 回答
2

如果您使用的是 OmniBrowser,则可以使用上下文菜单Implementors in Hierarchy...仅浏览Dictionary.

OmniBrowser 还提供了一个继承浏览器。选择任何实现#copy并单击工具栏中的Inheritance按钮。它将向您展示所有#copy.

于 2012-03-10T08:38:32.530 回答
2

(SomeClass>>#someSelector) 浏览

在我的 Pharo 图像中也可以使用。

在我的 Pharo 图像中也可以使用。既然你想先找到一个类,你可以把它和前面的例子结合起来..

((SomeSubclass whichClassIncludesSelector: #someSelector)>>#someSelector) 浏览

直接转到给定的方法。

于 2012-02-29T16:11:54.700 回答