maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult buy(
    1. InlineKeyboardButtonTypeBuy value
    )?,
  2. TResult callback(
    1. InlineKeyboardButtonTypeCallback value
    )?,
  3. TResult callbackGame(
    1. InlineKeyboardButtonTypeCallbackGame value
    )?,
  4. TResult callbackWithPassword(
    1. InlineKeyboardButtonTypeCallbackWithPassword value
    )?,
  5. TResult copyText(
    1. InlineKeyboardButtonTypeCopyText value
    )?,
  6. TResult loginUrl(
    1. InlineKeyboardButtonTypeLoginUrl value
    )?,
  7. TResult switchInline(
    1. InlineKeyboardButtonTypeSwitchInline value
    )?,
  8. TResult url(
    1. InlineKeyboardButtonTypeUrl value
    )?,
  9. TResult user(
    1. InlineKeyboardButtonTypeUser value
    )?,
  10. TResult webApp(
    1. InlineKeyboardButtonTypeWebApp value
    )?,
  11. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(InlineKeyboardButtonTypeBuy value)? buy,
  TResult Function(InlineKeyboardButtonTypeCallback value)? callback,
  TResult Function(InlineKeyboardButtonTypeCallbackGame value)? callbackGame,
  TResult Function(InlineKeyboardButtonTypeCallbackWithPassword value)?
  callbackWithPassword,
  TResult Function(InlineKeyboardButtonTypeCopyText value)? copyText,
  TResult Function(InlineKeyboardButtonTypeLoginUrl value)? loginUrl,
  TResult Function(InlineKeyboardButtonTypeSwitchInline value)? switchInline,
  TResult Function(InlineKeyboardButtonTypeUrl value)? url,
  TResult Function(InlineKeyboardButtonTypeUser value)? user,
  TResult Function(InlineKeyboardButtonTypeWebApp value)? webApp,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case InlineKeyboardButtonTypeBuy.constructor:
      if (buy != null) {
        return buy.call(this as InlineKeyboardButtonTypeBuy);
      }
      break;
    case InlineKeyboardButtonTypeCallback.constructor:
      if (callback != null) {
        return callback.call(this as InlineKeyboardButtonTypeCallback);
      }
      break;
    case InlineKeyboardButtonTypeCallbackGame.constructor:
      if (callbackGame != null) {
        return callbackGame.call(
          this as InlineKeyboardButtonTypeCallbackGame,
        );
      }
      break;
    case InlineKeyboardButtonTypeCallbackWithPassword.constructor:
      if (callbackWithPassword != null) {
        return callbackWithPassword.call(
          this as InlineKeyboardButtonTypeCallbackWithPassword,
        );
      }
      break;
    case InlineKeyboardButtonTypeCopyText.constructor:
      if (copyText != null) {
        return copyText.call(this as InlineKeyboardButtonTypeCopyText);
      }
      break;
    case InlineKeyboardButtonTypeLoginUrl.constructor:
      if (loginUrl != null) {
        return loginUrl.call(this as InlineKeyboardButtonTypeLoginUrl);
      }
      break;
    case InlineKeyboardButtonTypeSwitchInline.constructor:
      if (switchInline != null) {
        return switchInline.call(
          this as InlineKeyboardButtonTypeSwitchInline,
        );
      }
      break;
    case InlineKeyboardButtonTypeUrl.constructor:
      if (url != null) {
        return url.call(this as InlineKeyboardButtonTypeUrl);
      }
      break;
    case InlineKeyboardButtonTypeUser.constructor:
      if (user != null) {
        return user.call(this as InlineKeyboardButtonTypeUser);
      }
      break;
    case InlineKeyboardButtonTypeWebApp.constructor:
      if (webApp != null) {
        return webApp.call(this as InlineKeyboardButtonTypeWebApp);
      }
      break;
  }
  return orElse.call();
}