我有一个容器系列,形式为
trait Value {
type Internal
implicit def order:Internal => Ordering[Internal]
def value:Internal
}
我希望能够使用 Internal 类型的排序来为 Value 的特定子类型定义排序,例如:
object Value {
implicit def order[V <: Value]:Ordering[V] = Ordering((_:V).value)
}
但是,编译器说 V#Internal 没有可用的隐式排序,即使在 trait 中指定了这样的排序。
有没有办法实现我想要做的事情?