mapOrNull<TResult extends Object?> method
TResult?
mapOrNull<TResult extends Object?>({
- TResult? idle(
- DataStateIdle<
T> value
- DataStateIdle<
- TResult? loading(
- DataStateLoading<
T> value
- DataStateLoading<
- TResult? error(
- DataStateError<
T> value
- DataStateError<
- TResult? success(
- DataStateSuccess<
T> value
- DataStateSuccess<
A variant of map that fallback to returning null.
It is equivalent to doing:
switch (sealedClass) {
case final Subclass value:
return ...;
case _:
return null;
}
Implementation
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>({TResult? Function( DataStateIdle<T> value)? idle,TResult? Function( DataStateLoading<T> value)? loading,TResult? Function( DataStateError<T> value)? error,TResult? Function( DataStateSuccess<T> value)? success,}){
final _that = this;
switch (_that) {
case DataStateIdle() when idle != null:
return idle(_that);case DataStateLoading() when loading != null:
return loading(_that);case DataStateError() when error != null:
return error(_that);case DataStateSuccess() when success != null:
return success(_that);case _:
return null;
}
}