maybeMap<TResult extends Object?> method
TResult
maybeMap<TResult extends Object?>({
- TResult server(
- ServerFailure value
- TResult network(
- NetworkFailure value
- TResult unauthorized(
- UnauthorizedFailure value
- TResult timeout(
- TimeoutFailure value
- TResult cache(
- CacheFailure value
- TResult unexpected(
- UnexpectedFailure value
- required TResult orElse(),
A variant of map that fallback to returning orElse.
It is equivalent to doing:
switch (sealedClass) {
case final Subclass value:
return ...;
case _:
return orElse();
}
Implementation
@optionalTypeArgs TResult maybeMap<TResult extends Object?>({TResult Function( ServerFailure value)? server,TResult Function( NetworkFailure value)? network,TResult Function( UnauthorizedFailure value)? unauthorized,TResult Function( TimeoutFailure value)? timeout,TResult Function( CacheFailure value)? cache,TResult Function( UnexpectedFailure value)? unexpected,required TResult orElse(),}){
final _that = this;
switch (_that) {
case ServerFailure() when server != null:
return server(_that);case NetworkFailure() when network != null:
return network(_that);case UnauthorizedFailure() when unauthorized != null:
return unauthorized(_that);case TimeoutFailure() when timeout != null:
return timeout(_that);case CacheFailure() when cache != null:
return cache(_that);case UnexpectedFailure() when unexpected != null:
return unexpected(_that);case _:
return orElse();
}
}