map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult other(
    1. PaymentProviderOther value
    ),
  2. required TResult smartGlocal(
    1. PaymentProviderSmartGlocal value
    ),
  3. required TResult stripe(
    1. PaymentProviderStripe value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(PaymentProviderOther value) other,
  required TResult Function(PaymentProviderSmartGlocal value) smartGlocal,
  required TResult Function(PaymentProviderStripe value) stripe,
}) {
  switch (getConstructor()) {
    case PaymentProviderOther.constructor:
      return other.call(this as PaymentProviderOther);
    case PaymentProviderSmartGlocal.constructor:
      return smartGlocal.call(this as PaymentProviderSmartGlocal);
    case PaymentProviderStripe.constructor:
      return stripe.call(this as PaymentProviderStripe);
  }
  throw StateError('not handled type Generator');
}