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