Pharo / Squeak - Как мне быстро просмотреть реализацию данного метода в данном классе? - PullRequest
5 голосов
/ 29 февраля 2012

Допустим, я хочу увидеть, как "копия" реализована в классе Dictionary. В настоящее время я использую системный браузер и вручную просматриваю иерархию наследования (снизу вверх), пока не найду класс, который реализует данное сообщение. Существует ли однострочная рабочая область, которая открыла бы системный браузер в нужном месте?

Ответы [ 4 ]

6 голосов
/ 29 февраля 2012

Лично я просто набираю #selector в рабочей области, выделяю его и нажимаю alt + m, чтобы вызвать всех разработчиков сообщения.Гораздо быстрее, чем вводить весь этот код.

6 голосов
/ 29 февраля 2012
( SomeClass whichClassIncludesSelector: #initialize ) browse

Будет просмотрен класс, который реализует сообщение # initialize.

2 голосов
/ 10 марта 2012

Если вы используете OmniBrowser, вы можете использовать контекстное меню Интеграторы в иерархии ... , чтобы просматривать только агрегаторы селектора в иерархии Dictionary.

OmniBrowser также предоставляет Браузер наследования . Выберите любую реализацию #copy и нажмите кнопку Inheritance на панели инструментов. Он покажет вам иерархическое представление всех разработчиков #copy.

2 голосов
/ 29 февраля 2012

(SomeClass >> # someSelector) browse

также работает в моем изображении Pharo.

работает также в моем изображении Pharo.И так как вы хотите сначала найти класс, вы можете объединить его с предыдущим примером.способ.

...