maybeWhen<R> method
R
maybeWhen<R>({
- R data(
- T data
- R loading(
- T? previousData
- R error(
- Object error,
- StackTrace stackTrace
- required R orElse(),
Pattern-matches with an orElse fallback for unhandled states.
Provide only the branches you care about; unhandled states fall
through to orElse.
Implementation
R maybeWhen<R>({
R Function(T data)? data,
R Function(T? previousData)? loading,
R Function(Object error, StackTrace stackTrace)? error,
required R Function() orElse,
}) {
return switch (this) {
AsyncData<T>(:final value) => data != null ? data(value) : orElse(),
AsyncLoading<T>(:final previousData) =>
loading != null ? loading(previousData) : orElse(),
AsyncError<T>(error: final err, stackTrace: final st) =>
error != null ? error(err, st) : orElse(),
};
}