map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult addContact(
    1. ChatActionBarAddContact value
    ),
  2. required TResult inviteMembers(
    1. ChatActionBarInviteMembers value
    ),
  3. required TResult joinRequest(
    1. ChatActionBarJoinRequest value
    ),
  4. required TResult reportAddBlock(
    1. ChatActionBarReportAddBlock value
    ),
  5. required TResult reportSpam(
    1. ChatActionBarReportSpam value
    ),
  6. required TResult sharePhoneNumber(
    1. ChatActionBarSharePhoneNumber value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(ChatActionBarAddContact value) addContact,
  required TResult Function(ChatActionBarInviteMembers value) inviteMembers,
  required TResult Function(ChatActionBarJoinRequest value) joinRequest,
  required TResult Function(ChatActionBarReportAddBlock value) reportAddBlock,
  required TResult Function(ChatActionBarReportSpam value) reportSpam,
  required TResult Function(ChatActionBarSharePhoneNumber value)
  sharePhoneNumber,
}) {
  switch (getConstructor()) {
    case ChatActionBarAddContact.constructor:
      return addContact.call(this as ChatActionBarAddContact);
    case ChatActionBarInviteMembers.constructor:
      return inviteMembers.call(this as ChatActionBarInviteMembers);
    case ChatActionBarJoinRequest.constructor:
      return joinRequest.call(this as ChatActionBarJoinRequest);
    case ChatActionBarReportAddBlock.constructor:
      return reportAddBlock.call(this as ChatActionBarReportAddBlock);
    case ChatActionBarReportSpam.constructor:
      return reportSpam.call(this as ChatActionBarReportSpam);
    case ChatActionBarSharePhoneNumber.constructor:
      return sharePhoneNumber.call(this as ChatActionBarSharePhoneNumber);
  }
  throw StateError('not handled type Generator');
}