Perhaps you could just override it as generic in the interface.
@protocol ItemsStore <NSObject> - (NSArray *)items; @end @interface MyItemsStore<ObjectType> : NSObject <ItemsStore> - (NSArray <ObjectType> *)items; @end
This seems like an unlikely scenario. You might be better off defining the type of elements in each subclass. Like what Apple does with NSFetchRequest in generating its core data model.
malhal
source share