如何在没有元组的情况下映射 2 个 Either 值
How to map 2 Either values without tupled
我需要取 2 个值,每个值都是 Either<Throwable, Any>
,如果每个值都是 Right
,则将它们组合在一起(或做任何其他事情)。
对于 arrow-kt 0.11.0
可以使用 tupled
tupled(
"Hello".right(),
"Word".right()
).map { params ->
println(params.a + params.b) //go to map ONLY IF a and b are always right
}
但由于 arrow-kt 0.12
tupled 已弃用,取而代之的是 Kotlin 的 Pair 和 Triple,因此我可以t figure out how to achieve the same without
tupled`。
您可以使用Either.zip
"hello".right().zip("world".right()) { a, b -> a + b }
我需要取 2 个值,每个值都是 Either<Throwable, Any>
,如果每个值都是 Right
,则将它们组合在一起(或做任何其他事情)。
对于 arrow-kt 0.11.0
可以使用 tupled
tupled(
"Hello".right(),
"Word".right()
).map { params ->
println(params.a + params.b) //go to map ONLY IF a and b are always right
}
但由于 arrow-kt 0.12
tupled 已弃用,取而代之的是 Kotlin 的 Pair 和 Triple,因此我可以t figure out how to achieve the same without
tupled`。
您可以使用Either.zip
"hello".right().zip("world".right()) { a, b -> a + b }