在Scala 2.11中绕过弃用警告

时间:2015-05-23 09:29:01

标签: scala scala-2.11 deprecation-warning

有一种很好的方法可以避免invoking the deprecated method from a deprecated local def在Scala 2.10(以及之前)中出现弃用警告。不幸的是,它在Scala 2.11中不起作用。还有其他选择吗?

1 个答案:

答案 0 :(得分:1)

this Scala issue comment开始,我们可以定义在不推荐使用的类/特征中调用弃用API的方法,并让此类的伴随对象在没有警告的情况下扩展它:

scala> @deprecated("", "") def foo = 0
foo: Int

scala> object Test { @deprecated("", "") class Coral { def fooForwarder = foo }; object Coral extends Coral }
defined object Test

scala> Test.Coral.fooForwarder
res1: Int = 0