code: func isPubSub(methodType reflect.Type) bool {
  	// numIn(0) is the receiver type
  	if methodType.NumIn() < 2 || methodType.NumOut() != 2 {
  		return false
  	}
  	return isContextType(methodType.In(1)) &&
  		isSubscriptionType(methodType.Out(0)) &&
  		isErrorType(methodType.Out(1))
  }
docs: // isPubSub tests whether the given method has as as first argument a context.Context and
  // returns the pair (Subscription, error).