maybeWhen<R> method

R maybeWhen<R>({
  1. required R orElse(),
  2. bool skipLoadingOnReload = false,
  3. bool skipLoadingOnRefresh = true,
  4. bool skipError = false,
  5. R data(
    1. T data
    )?,
  6. R error(
    1. Object error,
    2. StackTrace stackTrace
    )?,
  7. R loading()?,
})

Switch-case over the state of the AsyncValue while purposefully not handling some cases.

If AsyncValue was in a case that is not handled, will return orElse.

Implementation

R maybeWhen<R>({
  required R Function() orElse,
  bool skipLoadingOnReload = false,
  bool skipLoadingOnRefresh = true,
  bool skipError = false,
  R Function(T data)? data,
  R Function(Object error, StackTrace stackTrace)? error,
  R Function()? loading,
}) {
  return when(
    skipError: skipError,
    skipLoadingOnRefresh: skipLoadingOnRefresh,
    skipLoadingOnReload: skipLoadingOnReload,
    data: data ?? (_) => orElse(),
    error: error ?? (err, stack) => orElse(),
    loading: loading ?? () => orElse(),
  );
}