flatMapError<F extends Object> method

Future<Result<T, F>> flatMapError<F extends Object>(
  1. FutureOr<Result<T, F>> transform(
    1. E error
    )
)

Chains another Result-producing sync or async transform on failure.

Implementation

Future<Result<T, F>> flatMapError<F extends Object>(
  FutureOr<Result<T, F>> Function(E error) transform,
) async {
  final result = await this;
  return switch (result) {
    Success(value: final value) => Result.success(value),
    Failure(error: final error) => await transform(error),
  };
}