map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult blockchain(
    1. UpgradedGiftOriginBlockchain value
    ),
  2. required TResult craft(
    1. UpgradedGiftOriginCraft value
    ),
  3. required TResult offer(
    1. UpgradedGiftOriginOffer value
    ),
  4. required TResult prepaidUpgrade(
    1. UpgradedGiftOriginPrepaidUpgrade value
    ),
  5. required TResult resale(
    1. UpgradedGiftOriginResale value
    ),
  6. required TResult transfer(
    1. UpgradedGiftOriginTransfer value
    ),
  7. required TResult upgrade(
    1. UpgradedGiftOriginUpgrade value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(UpgradedGiftOriginBlockchain value) blockchain,
  required TResult Function(UpgradedGiftOriginCraft value) craft,
  required TResult Function(UpgradedGiftOriginOffer value) offer,
  required TResult Function(UpgradedGiftOriginPrepaidUpgrade value)
  prepaidUpgrade,
  required TResult Function(UpgradedGiftOriginResale value) resale,
  required TResult Function(UpgradedGiftOriginTransfer value) transfer,
  required TResult Function(UpgradedGiftOriginUpgrade value) upgrade,
}) {
  switch (getConstructor()) {
    case UpgradedGiftOriginBlockchain.constructor:
      return blockchain.call(this as UpgradedGiftOriginBlockchain);
    case UpgradedGiftOriginCraft.constructor:
      return craft.call(this as UpgradedGiftOriginCraft);
    case UpgradedGiftOriginOffer.constructor:
      return offer.call(this as UpgradedGiftOriginOffer);
    case UpgradedGiftOriginPrepaidUpgrade.constructor:
      return prepaidUpgrade.call(this as UpgradedGiftOriginPrepaidUpgrade);
    case UpgradedGiftOriginResale.constructor:
      return resale.call(this as UpgradedGiftOriginResale);
    case UpgradedGiftOriginTransfer.constructor:
      return transfer.call(this as UpgradedGiftOriginTransfer);
    case UpgradedGiftOriginUpgrade.constructor:
      return upgrade.call(this as UpgradedGiftOriginUpgrade);
  }
  throw StateError('not handled type Generator');
}