maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult forceReply(
    1. ReplyMarkupForceReply value
    )?,
  2. TResult inlineKeyboard(
    1. ReplyMarkupInlineKeyboard value
    )?,
  3. TResult removeKeyboard(
    1. ReplyMarkupRemoveKeyboard value
    )?,
  4. TResult showKeyboard(
    1. ReplyMarkupShowKeyboard value
    )?,
  5. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(ReplyMarkupForceReply value)? forceReply,
  TResult Function(ReplyMarkupInlineKeyboard value)? inlineKeyboard,
  TResult Function(ReplyMarkupRemoveKeyboard value)? removeKeyboard,
  TResult Function(ReplyMarkupShowKeyboard value)? showKeyboard,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case ReplyMarkupForceReply.constructor:
      if (forceReply != null) {
        return forceReply.call(this as ReplyMarkupForceReply);
      }
      break;
    case ReplyMarkupInlineKeyboard.constructor:
      if (inlineKeyboard != null) {
        return inlineKeyboard.call(this as ReplyMarkupInlineKeyboard);
      }
      break;
    case ReplyMarkupRemoveKeyboard.constructor:
      if (removeKeyboard != null) {
        return removeKeyboard.call(this as ReplyMarkupRemoveKeyboard);
      }
      break;
    case ReplyMarkupShowKeyboard.constructor:
      if (showKeyboard != null) {
        return showKeyboard.call(this as ReplyMarkupShowKeyboard);
      }
      break;
  }
  return orElse.call();
}