map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult administrator(
    1. GiveawayParticipantStatusAdministrator value
    ),
  2. required TResult alreadyWasMember(
    1. GiveawayParticipantStatusAlreadyWasMember value
    ),
  3. required TResult disallowedCountry(
    1. GiveawayParticipantStatusDisallowedCountry value
    ),
  4. required TResult eligible(
    1. GiveawayParticipantStatusEligible value
    ),
  5. required TResult participating(
    1. GiveawayParticipantStatusParticipating value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(GiveawayParticipantStatusAdministrator value)
  administrator,
  required TResult Function(GiveawayParticipantStatusAlreadyWasMember value)
  alreadyWasMember,
  required TResult Function(GiveawayParticipantStatusDisallowedCountry value)
  disallowedCountry,
  required TResult Function(GiveawayParticipantStatusEligible value) eligible,
  required TResult Function(GiveawayParticipantStatusParticipating value)
  participating,
}) {
  switch (getConstructor()) {
    case GiveawayParticipantStatusAdministrator.constructor:
      return administrator.call(
        this as GiveawayParticipantStatusAdministrator,
      );
    case GiveawayParticipantStatusAlreadyWasMember.constructor:
      return alreadyWasMember.call(
        this as GiveawayParticipantStatusAlreadyWasMember,
      );
    case GiveawayParticipantStatusDisallowedCountry.constructor:
      return disallowedCountry.call(
        this as GiveawayParticipantStatusDisallowedCountry,
      );
    case GiveawayParticipantStatusEligible.constructor:
      return eligible.call(this as GiveawayParticipantStatusEligible);
    case GiveawayParticipantStatusParticipating.constructor:
      return participating.call(
        this as GiveawayParticipantStatusParticipating,
      );
  }
  throw StateError('not handled type Generator');
}