map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult fragmentRefund(
    1. ChatRevenueTransactionTypeFragmentRefund value
    ),
  2. required TResult fragmentWithdrawal(
    1. ChatRevenueTransactionTypeFragmentWithdrawal value
    ),
  3. required TResult sponsoredMessageEarnings(
    1. ChatRevenueTransactionTypeSponsoredMessageEarnings value
    ),
  4. required TResult suggestedPostEarnings(
    1. ChatRevenueTransactionTypeSuggestedPostEarnings value
    ),
  5. required TResult unsupported(
    1. ChatRevenueTransactionTypeUnsupported value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(ChatRevenueTransactionTypeFragmentRefund value)
  fragmentRefund,
  required TResult Function(
    ChatRevenueTransactionTypeFragmentWithdrawal value,
  )
  fragmentWithdrawal,
  required TResult Function(
    ChatRevenueTransactionTypeSponsoredMessageEarnings value,
  )
  sponsoredMessageEarnings,
  required TResult Function(
    ChatRevenueTransactionTypeSuggestedPostEarnings value,
  )
  suggestedPostEarnings,
  required TResult Function(ChatRevenueTransactionTypeUnsupported value)
  unsupported,
}) {
  switch (getConstructor()) {
    case ChatRevenueTransactionTypeFragmentRefund.constructor:
      return fragmentRefund.call(
        this as ChatRevenueTransactionTypeFragmentRefund,
      );
    case ChatRevenueTransactionTypeFragmentWithdrawal.constructor:
      return fragmentWithdrawal.call(
        this as ChatRevenueTransactionTypeFragmentWithdrawal,
      );
    case ChatRevenueTransactionTypeSponsoredMessageEarnings.constructor:
      return sponsoredMessageEarnings.call(
        this as ChatRevenueTransactionTypeSponsoredMessageEarnings,
      );
    case ChatRevenueTransactionTypeSuggestedPostEarnings.constructor:
      return suggestedPostEarnings.call(
        this as ChatRevenueTransactionTypeSuggestedPostEarnings,
      );
    case ChatRevenueTransactionTypeUnsupported.constructor:
      return unsupported.call(this as ChatRevenueTransactionTypeUnsupported);
  }
  throw StateError('not handled type Generator');
}