Scala 为什么在没有子类型证据的情况下,这种多功能情况的隐式推导会失败?

Scala 为什么在没有子类型证据的情况下,这种多功能情况的隐式推导会失败?,scala,type-inference,implicit,generic-programming,shapeless,Scala,Type Inference,Implicit,Generic Programming,Shapeless,下面的示例中有两个类似的无形状多态函数。它们之间唯一的区别是的隐式案例定义有一个额外的子类型证据(隐式e:FS T 对象FromDouble扩展自str[Double]{ 覆盖def应用(v1:String):Double=v1.toDouble } 对象2{ 隐式def-kase[T,FS(s)) } //无法派生'Case.Aux'` 不合格(“1.0”,来自双精度) 对象2{ 隐式定义kase[T,FS](隐式e:FS(s)) } 双精度(“1.0”,FromDouble) “太长了,读不

下面的示例中有两个类似的无形状多态函数。它们之间唯一的区别是
的隐式案例定义有一个额外的子类型证据
(隐式e:FS T
对象FromDouble扩展自str[Double]{
覆盖def应用(v1:String):Double=v1.toDouble
}
对象2{
隐式def-kase[T,FS(s))
}
//无法派生'Case.Aux'`
不合格(“1.0”,来自双精度)
对象2{
隐式定义kase[T,FS](隐式e:FS(s))
}
双精度(“1.0”,FromDouble)

“太长了,读不下去了。” 当您执行
[T,FS