matchEffect<C, D> method
{@category folding}
Implementation
Effect<E, C, D> matchEffect<C, D>({
required Effect<E, C, D> Function(L l) onFailure,
required Effect<E, C, D> Function(R r) onSuccess,
}) =>
Effect.from(
(context) => _unsafeRun(context).then(
(exit) => switch (exit) {
Left(value: final cause) => switch (cause) {
Failure<L>(error: final error) =>
onFailure(error)._unsafeRun(context),
Die() => Left(cause),
Interrupted() => Left(cause),
},
Right(value: final value) => onSuccess(value)._unsafeRun(context),
},
),
);