Nel Pharo, il metodo che stai cercando è ClassDescription>>allMethodsInCategory:
:
| selectors |
selectors := MyClass allMethodsInCategory: #'protocol name'.
Per trovare metodi in un protocollo di classe, semplicemente facendo inviare al metaclasse invece:
selectors := MyClass class allMethodsInCategory: #'protocol name'.
Un'altra soluzione si potrebbe voler considerare, tuttavia, è quello di utilizzare un pragma per contrassegnare i metodi invece. Vedere il commento sulla classe Pragma
per i dettagli di tale approccio. Ha i vantaggi che altri pacchetti possono liberamente aggiungere metodi appartenenti al tuo gruppo (che devono essere in un protocollo *) e che il pragma può essere usato anche per memorizzare altri metadati (come un ordine di valutazione, per esempio).
NB. Il selettore allMethodsInCategory:
è stato dichiarato obsoleto in Pharo 3.0 e successivamente in favore di allSelectorsInProtocol:
fonte
2010-06-07 22:49:25
#allMethodsInCategory: funziona anche in Squeak. –
+1 per ulteriori informazioni sulla direttiva –