My guess, without delving into the implementation, is that a Protocol is *always* about the class, and that this is entirely a red herring.