我正在将一些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中使用什么代替错误函数?
答案 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