/** * Effectually flat maps over the value type. * * @tsplus static effect/core/io/Exit.Aspects flatMapEffect * @tsplus pipeable effect/core/io/Exit flatMapEffect */ export function flatMapEffect( f: (a: A) => Effect> ) { return (self: Exit): Effect> => { switch (self._tag) { case "Failure": return Effect.succeed(self) case "Success": return f(self.value) } } }