我已(从实际的代码简化):在这种情况下,我可以抑制未经检查的警告吗?
class Def[T]
object Fun {
def unapply[A,B](d: Def[A => B]): Option[A => B] = ???
}
def isFun(d: Def[_]) = d match {
case Fun(f) => true
case _ => false
}
这会产生一个警告:
非可变类型参数A =>在式图案TypeName.this.Def B [A => B]处于未选中状态,因为它被擦除消除
我试图放置@unchecked
Fun(f)
后,但这会产生一个错误;并在f
之后,这并没有压制警告。有什么办法去除这个警告?
更多代码。这是斯卡拉。可以编写少于30行的代码,编译并运行! :d。 – goroncy