public TypeParameterKind GetTypeParameterKind(GenericParameterType type) { switch (type) { case GenericParameterType.Type: return(TypeParameterKind.Type); case GenericParameterType.Method: return(TypeParameterKind.Method); default: { throw new Exception($"Expected either a type parameter kind of type or method, but not {type.ToString()}"); } } }