maybeMap<TResult extends Object?> method
- @optionalTypeArgs
- TResult forceReply(
- ForceReply value
- TResult inlineKeyboard(
- InlineKeyboardMarkup value
- TResult keyboard(
- ReplyKeyboardMarkup value
- TResult keyboardRemove(
- ReplyKeyboardRemove 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(ForceReply value)? forceReply,
TResult Function(InlineKeyboardMarkup value)? inlineKeyboard,
TResult Function(ReplyKeyboardMarkup value)? keyboard,
TResult Function(ReplyKeyboardRemove value)? keyboardRemove,
required TResult orElse(),
}) {
final _that = this;
switch (_that) {
case ForceReply() when forceReply != null:
return forceReply(_that);
case InlineKeyboardMarkup() when inlineKeyboard != null:
return inlineKeyboard(_that);
case ReplyKeyboardMarkup() when keyboard != null:
return keyboard(_that);
case ReplyKeyboardRemove() when keyboardRemove != null:
return keyboardRemove(_that);
case _:
return orElse();
}
}