我正在尝试定义一个在其参数和返回类型中都是通用的方法。基本上是为案例类的 JSON 序列化创建一个辅助函数。
所以我想写这样的伪代码:
def post[Request,Response](data:Request) : Response = ???
case class A(i:String)
case class B(j:Int)
val result = post[A,B]("input")
在这种情况下(假设没有错误)结果属于 B 类。
编译器无法推断返回值是可以理解的,但我希望它能够推断出 Request 类型。换句话说,我想写一些类似的东西
val result = post[B]("input")
其中 A 的类型是由data参数推断出来的,所以用户只需要在调用函数时指定返回类型即可。