map<TResult extends Object?> method

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

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(ReplyMarkupForceReply value) forceReply,
  required TResult Function(ReplyMarkupInlineKeyboard value) inlineKeyboard,
  required TResult Function(ReplyMarkupRemoveKeyboard value) removeKeyboard,
  required TResult Function(ReplyMarkupShowKeyboard value) showKeyboard,
}) {
  switch (getConstructor()) {
    case ReplyMarkupForceReply.constructor:
      return forceReply.call(this as ReplyMarkupForceReply);
    case ReplyMarkupInlineKeyboard.constructor:
      return inlineKeyboard.call(this as ReplyMarkupInlineKeyboard);
    case ReplyMarkupRemoveKeyboard.constructor:
      return removeKeyboard.call(this as ReplyMarkupRemoveKeyboard);
    case ReplyMarkupShowKeyboard.constructor:
      return showKeyboard.call(this as ReplyMarkupShowKeyboard);
  }
  throw StateError('not handled type Generator');
}