5
私は、私たちのプロジェクトでscalaz検証を使用しようとしていると、以下のような状況に遭遇している:いずれかがあった場合Scalaz検証
def rate(username: String, params: Map[String, String]): ValidationNEL[String, Int] = {
val voteV:Validation[String, RateVote] = validate(params, "vote") flatMap {v: String => RateVote(v)}
val voterV:Validation[String, Sring] = validate(params, "voter")
...
}
は、今私は、可能なパラメータ誤差を含むValidationNELを返却する必要がある、または使用が検証さメソッドを呼び出すパラメータ:
storage.rate(username, voter, vote): Validation[String, Int]
私は知っている、私は使用することができます| @ |最初の部分はこのコードですが、
(voterV.liftFailNel |@| voteV.liftFailNel) { (voter, rv) =>
storage.rate(username, voter, rv)
}
はValidationNEL[String, Validation[String, Int]]
を返します。 ValidationNEL[String, Int]
を得るために、この結果を「平坦化」する方法はありますか?
) – Digal