map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult regular(
    1. PaymentFormTypeRegular value
    ),
  2. required TResult starSubscription(
    1. PaymentFormTypeStarSubscription value
    ),
  3. required TResult stars(
    1. PaymentFormTypeStars value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(PaymentFormTypeRegular value) regular,
  required TResult Function(PaymentFormTypeStarSubscription value)
  starSubscription,
  required TResult Function(PaymentFormTypeStars value) stars,
}) {
  switch (getConstructor()) {
    case PaymentFormTypeRegular.constructor:
      return regular.call(this as PaymentFormTypeRegular);
    case PaymentFormTypeStarSubscription.constructor:
      return starSubscription.call(this as PaymentFormTypeStarSubscription);
    case PaymentFormTypeStars.constructor:
      return stars.call(this as PaymentFormTypeStars);
  }
  throw StateError('not handled type Generator');
}