map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult businessFeature(
    1. PremiumSourceBusinessFeature value
    ),
  2. required TResult feature(
    1. PremiumSourceFeature value
    ),
  3. required TResult limitExceeded(
    1. PremiumSourceLimitExceeded value
    ),
  4. required TResult link(
    1. PremiumSourceLink value
    ),
  5. required TResult settings(
    1. PremiumSourceSettings value
    ),
  6. required TResult storyFeature(
    1. PremiumSourceStoryFeature value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(PremiumSourceBusinessFeature value)
  businessFeature,
  required TResult Function(PremiumSourceFeature value) feature,
  required TResult Function(PremiumSourceLimitExceeded value) limitExceeded,
  required TResult Function(PremiumSourceLink value) link,
  required TResult Function(PremiumSourceSettings value) settings,
  required TResult Function(PremiumSourceStoryFeature value) storyFeature,
}) {
  switch (getConstructor()) {
    case PremiumSourceBusinessFeature.constructor:
      return businessFeature.call(this as PremiumSourceBusinessFeature);
    case PremiumSourceFeature.constructor:
      return feature.call(this as PremiumSourceFeature);
    case PremiumSourceLimitExceeded.constructor:
      return limitExceeded.call(this as PremiumSourceLimitExceeded);
    case PremiumSourceLink.constructor:
      return link.call(this as PremiumSourceLink);
    case PremiumSourceSettings.constructor:
      return settings.call(this as PremiumSourceSettings);
    case PremiumSourceStoryFeature.constructor:
      return storyFeature.call(this as PremiumSourceStoryFeature);
  }
  throw StateError('not handled type Generator');
}