maybeMap<TResult extends Object?> method
TResult
maybeMap<TResult extends Object?>({
- TResult withAccessToken(
- UpdatePasswordRequestWithAccessToken value
- TResult withFreshAccessToken(
- UpdatePasswordRequestWithFreshAccessToken value
- TResult withEmail(
- UpdatePasswordRequestWithEmail value
- TResult withPhoneNumber(
- UpdatePasswordRequestWithPhoneNumber 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(UpdatePasswordRequestWithAccessToken value)?
withAccessToken,
TResult Function(UpdatePasswordRequestWithFreshAccessToken value)?
withFreshAccessToken,
TResult Function(UpdatePasswordRequestWithEmail value)? withEmail,
TResult Function(UpdatePasswordRequestWithPhoneNumber value)?
withPhoneNumber,
required TResult orElse(),
}) {
final _that = this;
switch (_that) {
case UpdatePasswordRequestWithAccessToken() when withAccessToken != null:
return withAccessToken(_that);
case UpdatePasswordRequestWithFreshAccessToken()
when withFreshAccessToken != null:
return withFreshAccessToken(_that);
case UpdatePasswordRequestWithEmail() when withEmail != null:
return withEmail(_that);
case UpdatePasswordRequestWithPhoneNumber() when withPhoneNumber != null:
return withPhoneNumber(_that);
case _:
return orElse();
}
}