В Pharo вы ищете метод ClassDescription>>allMethodsInCategory:
:
| selectors |
selectors := MyClass allMethodsInCategory: #'protocol name'.
Чтобы найти методы в протоколе на стороне класса, просто отправьте метакласс вместо:
selectors := MyClass class allMethodsInCategory: #'protocol name'.
Другое решение, которое вы, возможно, захотите рассмотреть, - это использование прагмы для обозначения ваших методов.См. Комментарий к классу Pragma
для деталей этого подхода.Преимущество заключается в том, что другие пакеты могут свободно добавлять методы, принадлежащие вашей группе (которые должны быть в протоколе *), и в том, что прагма может использоваться и для хранения других метаданных (например, порядка оценки).
Примечание. Селектор allMethodsInCategory:
устарел в Pharo 3.0 и более поздних версиях в пользу allSelectorsInProtocol: