title: Is there any way to add a generic type parameter to a protocol?
body: <p>As of Xcode 7, Objective-C introduced generic type parameters for classes. Is there any way to use generics with Objective C protocols? I haven't found an obvious way to do this because the equivalent to <code>@interface MyClass&lt;ObjectType&gt;</code> is already taken for protocols (e.g. <code>@protocol MyProtocol&lt;NSObject&gt;</code>).</p>
  
  <p>Example: I would like to convert code like this:</p>
  
  <pre><code>@protocol MYObjectContainer
  - (id)objectAtIndex:(NSUInteger)index;
  @end
  </code></pre>
  
  <p>to code like this:</p>
  
  <pre><code>@protocol MYObjectContainer
  - (ObjectType)objectAtIndex:(NSUInteger)index;
  @end
  </code></pre>
  
  <p>Which is possible with regular classes (see, for example, NSArray).</p>