pakoito
04/24/2020, 3:46 PMhandleErrorWith
?melatonina
04/24/2020, 3:47 PMpakoito
04/24/2020, 3:48 PMswap().flatMap(block)
melatonina
04/24/2020, 3:49 PMpakoito
04/24/2020, 3:52 PMmelatonina
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:53 PMflatMapLeft
is a good name for this. I'm trying to remember why we didn't allow to change the error type on flatMappakoito
04/24/2020, 3:53 PMpakoito
04/24/2020, 3:53 PMmelatonina
04/24/2020, 3:55 PMmelatonina
04/24/2020, 3:58 PMprocessFlow
is a builder of ProcessFlow
which is something like a kotlin Flow
emitting progress events, followed by a terminal event containing a result. The ``as`` infix operator embeds a ProcessFlow in the current ProcessFlow
. ProcessFlow
is actually a wrapper around a regular Flow
, and that's where the need for using suspend
functions comes from.melatonina
04/24/2020, 3:58 PMpakoito
04/24/2020, 3:59 PMpakoito
04/24/2020, 3:59 PMflatMapLeft
could happen outsidepakoito
04/24/2020, 3:59 PMpakoito
04/24/2020, 4:00 PMdoNotCompute? StoredEvaluationProblem.ComputationSkippedAsRequested.left() : computeFlow()
pakoito
04/24/2020, 4:00 PMpakoito
04/24/2020, 4:00 PMmelatonina
04/24/2020, 4:30 PMmelatonina
04/24/2020, 4:40 PMProcessFlow
, I'll check arrow-meta and see if I can remove some boilerplate code (not visible here) and simplify the syntax even further.
Anyway, thanks again!