这只是一个基本示例,但是否可以重写最后一个特征以避免使用 2 类型 (T ,U ) 设置以某种方式仅通过使用 M 来提取或推断 T?我更多地询问没有显式对象的类型系统,但也许这是唯一的方法?
trait Data[T]{
val x:T
}
trait Meta[T<:Data[T]]{
val m:T
}
trait Overall[T, M<:Meta[T] ] {
def review(t:T): M
}
//assume we want to work with the nested data type Int
case class Helper extends Overall[Int,Meta[Int]]
我要问的内容不正确:
//extract T by however Overall is finally defined?
trait Overall[ M<:Meta[T] ] {
def review(t:T): M
}
case class Helper extends Overall[Meta[Int]]
谢谢