map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult activeStoryLimitExceeded(
    1. CanPostStoryResultActiveStoryLimitExceeded value
    ),
  2. required TResult boostNeeded(
    1. CanPostStoryResultBoostNeeded value
    ),
  3. required TResult liveStoryIsActive(
    1. CanPostStoryResultLiveStoryIsActive value
    ),
  4. required TResult monthlyLimitExceeded(
    1. CanPostStoryResultMonthlyLimitExceeded value
    ),
  5. required TResult ok(
    1. CanPostStoryResultOk value
    ),
  6. required TResult premiumNeeded(
    1. CanPostStoryResultPremiumNeeded value
    ),
  7. required TResult weeklyLimitExceeded(
    1. CanPostStoryResultWeeklyLimitExceeded value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(CanPostStoryResultActiveStoryLimitExceeded value)
  activeStoryLimitExceeded,
  required TResult Function(CanPostStoryResultBoostNeeded value) boostNeeded,
  required TResult Function(CanPostStoryResultLiveStoryIsActive value)
  liveStoryIsActive,
  required TResult Function(CanPostStoryResultMonthlyLimitExceeded value)
  monthlyLimitExceeded,
  required TResult Function(CanPostStoryResultOk value) ok,
  required TResult Function(CanPostStoryResultPremiumNeeded value)
  premiumNeeded,
  required TResult Function(CanPostStoryResultWeeklyLimitExceeded value)
  weeklyLimitExceeded,
}) {
  switch (getConstructor()) {
    case CanPostStoryResultActiveStoryLimitExceeded.constructor:
      return activeStoryLimitExceeded.call(
        this as CanPostStoryResultActiveStoryLimitExceeded,
      );
    case CanPostStoryResultBoostNeeded.constructor:
      return boostNeeded.call(this as CanPostStoryResultBoostNeeded);
    case CanPostStoryResultLiveStoryIsActive.constructor:
      return liveStoryIsActive.call(
        this as CanPostStoryResultLiveStoryIsActive,
      );
    case CanPostStoryResultMonthlyLimitExceeded.constructor:
      return monthlyLimitExceeded.call(
        this as CanPostStoryResultMonthlyLimitExceeded,
      );
    case CanPostStoryResultOk.constructor:
      return ok.call(this as CanPostStoryResultOk);
    case CanPostStoryResultPremiumNeeded.constructor:
      return premiumNeeded.call(this as CanPostStoryResultPremiumNeeded);
    case CanPostStoryResultWeeklyLimitExceeded.constructor:
      return weeklyLimitExceeded.call(
        this as CanPostStoryResultWeeklyLimitExceeded,
      );
  }
  throw StateError('not handled type Generator');
}