Мы знаем, что в Objective-C существуют два основных корневых класса: NSObject и NSProxy. Существуют и другие корни (в основном для частных и устаревших целей), например Object и NSLeafProxy.
Определение нового корня довольно тривиально:
@interface DDRoot <NSObject>
@end
@implementation DDRoot
//implement the methods required by <NSObject>
@end
Мой вопрос: зачем вы хотите определить новый корневой класс? Есть ли какой-то прецедент, где это необходимо?