maybeMap<NewT> method

NewT maybeMap<NewT>({
  1. NewT data(
    1. AsyncData<ValueT> data
    )?,
  2. NewT error(
    1. AsyncError<ValueT> error
    )?,
  3. NewT loading(
    1. AsyncLoading<ValueT> loading
    )?,
  4. required NewT orElse(),
})

Perform some actions based on the state of the AsyncValue, or call orElse if the current state was not tested.

Implementation

NewT maybeMap<NewT>({
  NewT Function(AsyncData<ValueT> data)? data,
  NewT Function(AsyncError<ValueT> error)? error,
  NewT Function(AsyncLoading<ValueT> loading)? loading,
  required NewT Function() orElse,
}) {
  return map(
    data: (d) {
      if (data != null) return data(d);
      return orElse();
    },
    error: (d) {
      if (error != null) return error(d);
      return orElse();
    },
    loading: (d) {
      if (loading != null) return loading(d);
      return orElse();
    },
  );
}