Scala错误函数已弃用。有什么选择?

时间:2014-02-19 19:36:15

标签: scala haskell

我正在将一些Haskell代码移植到Scala中。在Haskell中,我可以使用错误函数。在某些时候,您似乎可以在Scala中执行此操作,但IDE正在向我显示现在已弃用。这是代码:

def prime (n : Int) : Boolean = () match {
    case _ if n < 1 => error("not a positive integer")
    case _ if n == 1 => false
    case _ => ld (n) == n
}

我现在在Scala中使用什么代替错误函数?

1 个答案:

答案 0 :(得分:16)

您应该在sys.error消息中使用deprecated作为mentioned

@deprecated("Use `sys.error(message)` instead", "2.9.0")

您可以使用-deprecation选项运行scala来获取此消息:

scala> def t = error("t")
<console>:7: warning: method error in object Predef is deprecated: Use `sys.error(message)` instead