map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult requestChat(
    1. KeyboardButtonTypeRequestChat value
    ),
  2. required TResult requestLocation(
    1. KeyboardButtonTypeRequestLocation value
    ),
  3. required TResult requestManagedBot(
    1. KeyboardButtonTypeRequestManagedBot value
    ),
  4. required TResult requestPhoneNumber(
    1. KeyboardButtonTypeRequestPhoneNumber value
    ),
  5. required TResult requestPoll(
    1. KeyboardButtonTypeRequestPoll value
    ),
  6. required TResult requestUsers(
    1. KeyboardButtonTypeRequestUsers value
    ),
  7. required TResult text(
    1. KeyboardButtonTypeText value
    ),
  8. required TResult webApp(
    1. KeyboardButtonTypeWebApp value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(KeyboardButtonTypeRequestChat value) requestChat,
  required TResult Function(KeyboardButtonTypeRequestLocation value)
  requestLocation,
  required TResult Function(KeyboardButtonTypeRequestManagedBot value)
  requestManagedBot,
  required TResult Function(KeyboardButtonTypeRequestPhoneNumber value)
  requestPhoneNumber,
  required TResult Function(KeyboardButtonTypeRequestPoll value) requestPoll,
  required TResult Function(KeyboardButtonTypeRequestUsers value)
  requestUsers,
  required TResult Function(KeyboardButtonTypeText value) text,
  required TResult Function(KeyboardButtonTypeWebApp value) webApp,
}) {
  switch (getConstructor()) {
    case KeyboardButtonTypeRequestChat.constructor:
      return requestChat.call(this as KeyboardButtonTypeRequestChat);
    case KeyboardButtonTypeRequestLocation.constructor:
      return requestLocation.call(this as KeyboardButtonTypeRequestLocation);
    case KeyboardButtonTypeRequestManagedBot.constructor:
      return requestManagedBot.call(
        this as KeyboardButtonTypeRequestManagedBot,
      );
    case KeyboardButtonTypeRequestPhoneNumber.constructor:
      return requestPhoneNumber.call(
        this as KeyboardButtonTypeRequestPhoneNumber,
      );
    case KeyboardButtonTypeRequestPoll.constructor:
      return requestPoll.call(this as KeyboardButtonTypeRequestPoll);
    case KeyboardButtonTypeRequestUsers.constructor:
      return requestUsers.call(this as KeyboardButtonTypeRequestUsers);
    case KeyboardButtonTypeText.constructor:
      return text.call(this as KeyboardButtonTypeText);
    case KeyboardButtonTypeWebApp.constructor:
      return webApp.call(this as KeyboardButtonTypeWebApp);
  }
  throw StateError('not handled type Generator');
}