我不明白为什么这段代码不能编译并失败:
没有可用于 A 的单例值,
其中: A 是具有约束的类型变量 >: ("yo" : String) 和 <: Singleton
case class Wrapper[A <: Singleton](a: A)(using ValueOf[A])
def test[A <: Singleton](blabla: Wrapper[A]): Unit = ()
test(Wrapper("yo"))
Run Code Online (Sandbox Code Playgroud)
这是预期的还是 Scala 3 中的错误?
请注意,如果我提取Wrapper("yo")然后它的工作原理:
case class Wrapper[A <: Singleton](a: A)(using ValueOf[A])
def test[A <: Singleton](blabla: Wrapper[A]): Unit = ()
val value = Wrapper("yo")
test(value)
Run Code Online (Sandbox Code Playgroud)