2016-08-25 10 views
0

List[\/[String, Int]]\/[String, List[Int]]に変換しようとしています。 私が見つけたすべての解決策は、sequenceUの使用法を指摘しています。 sequenceUはタイプG.M[List[G.A]]返すので、私は、\/[String, List[Int]]を返すことができませんでした:Scalaz:配列の分離に対する不一致の配列

def f(x: Int): \/[String, Int] = if (x > 0) x.right[String] else "failure".left[Int] 
val result: G.M[List[G.A]] = List(3, 4, 5).map(f).sequenceU 

私はsequenceUと間違って何をやっているの? \/[String, List[Int]]の取得方法

答えて

1

ジャストタイプ帰属を削除します。

scala> val result = List(3, 4, 5).map(f).sequenceU 
result: scalaz.\/[String,List[Int]] = \/-(List(3, 4, 5)) 
関連する問題