maybeMap<TResult extends Object?> method
TResult
maybeMap<TResult extends Object?>({
- TResult never(
- ExpirationNever value
- TResult timeout(
- ExpirationTimeout value
- TResult timestamp(
- ExpirationTimestamp 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( ExpirationNever value)? never,TResult Function( ExpirationTimeout value)? timeout,TResult Function( ExpirationTimestamp value)? timestamp,required TResult orElse(),}){
final _that = this;
switch (_that) {
case ExpirationNever() when never != null:
return never(_that);case ExpirationTimeout() when timeout != null:
return timeout(_that);case ExpirationTimestamp() when timestamp != null:
return timestamp(_that);case _:
return orElse();
}
}