使用Scalaz ValidationNel
,我正在尝试将List[ValidationNel[String, MyType]]
转换为ValidationNel[String, List[MyType]]
我的代码:
import scalaz._
import scalaz.syntax.traverse._
import scalaz.std.list._
import Scalaz._
val ns: NodeSeq = // ...
val v: ValidationNel[String, List[MyType]] =
ns.toList.traverse[({ type l[X] = ValidationNel[String, X] })#l, MyType](extractMyType(_))
private def extractMyType(n: Node): ValidationNel[String, MyType] = //...
使用sbt进行编译时,我得到:
[error] MyClass.scala:xx:value traverse不是List的成员[scala.xml.Node]
[error] val v:ValidationNel [String,List [MyType]] = ns.toList.traverse [({type l [X] = ValidationNel [String,X]})#l,MyType](extractMyType(_ ))
我无法让traverseU
工作,但我希望这个版本能够继续使用。
我正在使用scala 2.10.0和scalaz 7.1.1
我的错误在哪里?