使用Scala" 2.10.4",我有一个隐含的定义:
implicit class MyImplicits(val s: S) {
def ==>(relation: W):Option[List[S]] = {
getRelation(s,relation)
}
}
当我想使用它时,以下工作正常:
import MyImplicits
val list1 = s ==>(w)
val value = list1.get
但是当我写这篇文章时,我得到错误:
import MyImplicits
val value = s ==>(w).get
Error:(56, 67) value get is not a member of MyImplicits
val value = s ==>(w).get
^
出现此错误的原因是什么,无论如何都要解决它?
答案 0 :(得分:4)
那是因为它将get
应用于(w)
而不是整个表达式。
试试这个:
val value = (s ==>(w)).get
答案 1 :(得分:0)
Ashalynd已经解释过,这个时期的优先级高于==>运营商。你可以用括号绕过它,或者你可以使用get
作为后缀运算符:
val value = s ==> w get