carbaj0
04/27/2021, 11:50 AMlistEithers.map { it.toDomain() }.traverse(Either.applicative(), ::identity).map { it.fix().toList() }
vs
listEithers.map { it.toDomain() }.traverseEither { it }
simon.vergauwen
04/27/2021, 11:52 AMlistEithers
is. listEithers.traverseEither { it.toDomain() }
should also be possible.simon.vergauwen
04/27/2021, 11:52 AMtraverseEither { it }
== sequenceEither()
carbaj0
04/27/2021, 11:58 AMvirtual.traverseEither { it.toDomain() }
.flatMap { virtuals ->
physical.traverseEither { it.toDomain() }
.map { physicals ->
AccountState.CardCreated.MultipleCard(virtuals, physicals)
}
}
carbaj0
04/27/2021, 11:59 AMsimon.vergauwen
04/27/2021, 12:05 PMzip
(or either { }
).
virtual.traversEither(::toDomain)
.zip(physical.traverseEither(::toDomain))
{ vs, ps ->
CardCreated.MultipleCard(vs, ps)
}
carbaj0
04/27/2021, 12:23 PM