Traverse a class hierarchy from base to all descendants
In an iOS app I am writing I want to traverse a class hierarchy to make an inventory of all subclasses. My intent is to use each subclass type as a key -- via NSStringForClass() -- in a dictionary. My motivation is to be able to automatically discover all variants of a base class so that I can call methods associated with that class. For reasons of division of labor I prefer not to use method overriding here. Is it possible to do such a traversal? How would it work? Here's an example. This method will return all subclasses descending from the class you send the message to. @interface NSObject