scalaz中的行为不明白

时间:2017-03-14 10:04:44

标签: scala scalaz

来自ScalaZ neophite的问题。 我不太明白:

1.some

或相关的分离:

"Success!".right 

的工作。 我无法找到任何允许上述行为的隐式转换。 我知道如何使用它们,但我对它们的实现很感兴趣。 谢谢。

1 个答案:

答案 0 :(得分:3)

包含方法data.to_csv('data_modified.csv', index=False) 的类是some

OptionIdOps

如果查看定义,您会在特征定义中看到final class OptionIdOps[A](self: A) { def some: Option[A] = Some(self) } A的任何类型的其他隐式:

OptionIdOps

事实上,编译器确实:

trait ToOptionIdOps {
  implicit def ToOptionIdOps[A](a: A) = new OptionIdOps(a)
}