mapOrNull<TResult extends Object?> method
- @optionalTypeArgs
- TResult? forceReply(
- ForceReply value
- TResult? inlineKeyboard(
- InlineKeyboardMarkup value
- TResult? keyboard(
- ReplyKeyboardMarkup value
- TResult? keyboardRemove(
- ReplyKeyboardRemove value
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(ForceReply value)? forceReply,
TResult? Function(InlineKeyboardMarkup value)? inlineKeyboard,
TResult? Function(ReplyKeyboardMarkup value)? keyboard,
TResult? Function(ReplyKeyboardRemove value)? keyboardRemove,
}) {
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 null;
}
}