fold<R> method

R fold<R>({
  1. required R onSuccess(
    1. T value
    ),
  2. required R onFailure(
    1. Failure failure
    ),
})

Collapses the dual state of this result wrapper into a uniform type R.

Evaluates and triggers onSuccess if the state is optimal, otherwise triggers onFailure.

Implementation

R fold<R>({
  required R Function(T value) onSuccess,
  required R Function(Failure failure) onFailure,
}) =>
    switch (this) {
      _SuccessResult<T>(success: final success) => onSuccess(success.value),
      _FailureResult<T>(failure: final failure) => onFailure(failure),
    };