maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult foundVenue(
    1. InputStoryAreaTypeFoundVenue value
    )?,
  2. TResult link(
    1. InputStoryAreaTypeLink value
    )?,
  3. TResult location(
    1. InputStoryAreaTypeLocation value
    )?,
  4. TResult message(
    1. InputStoryAreaTypeMessage value
    )?,
  5. TResult previousVenue(
    1. InputStoryAreaTypePreviousVenue value
    )?,
  6. TResult suggestedReaction(
    1. InputStoryAreaTypeSuggestedReaction value
    )?,
  7. TResult upgradedGift(
    1. InputStoryAreaTypeUpgradedGift value
    )?,
  8. TResult weather(
    1. InputStoryAreaTypeWeather value
    )?,
  9. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(InputStoryAreaTypeFoundVenue value)? foundVenue,
  TResult Function(InputStoryAreaTypeLink value)? link,
  TResult Function(InputStoryAreaTypeLocation value)? location,
  TResult Function(InputStoryAreaTypeMessage value)? message,
  TResult Function(InputStoryAreaTypePreviousVenue value)? previousVenue,
  TResult Function(InputStoryAreaTypeSuggestedReaction value)?
  suggestedReaction,
  TResult Function(InputStoryAreaTypeUpgradedGift value)? upgradedGift,
  TResult Function(InputStoryAreaTypeWeather value)? weather,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case InputStoryAreaTypeFoundVenue.constructor:
      if (foundVenue != null) {
        return foundVenue.call(this as InputStoryAreaTypeFoundVenue);
      }
      break;
    case InputStoryAreaTypeLink.constructor:
      if (link != null) {
        return link.call(this as InputStoryAreaTypeLink);
      }
      break;
    case InputStoryAreaTypeLocation.constructor:
      if (location != null) {
        return location.call(this as InputStoryAreaTypeLocation);
      }
      break;
    case InputStoryAreaTypeMessage.constructor:
      if (message != null) {
        return message.call(this as InputStoryAreaTypeMessage);
      }
      break;
    case InputStoryAreaTypePreviousVenue.constructor:
      if (previousVenue != null) {
        return previousVenue.call(this as InputStoryAreaTypePreviousVenue);
      }
      break;
    case InputStoryAreaTypeSuggestedReaction.constructor:
      if (suggestedReaction != null) {
        return suggestedReaction.call(
          this as InputStoryAreaTypeSuggestedReaction,
        );
      }
      break;
    case InputStoryAreaTypeUpgradedGift.constructor:
      if (upgradedGift != null) {
        return upgradedGift.call(this as InputStoryAreaTypeUpgradedGift);
      }
      break;
    case InputStoryAreaTypeWeather.constructor:
      if (weather != null) {
        return weather.call(this as InputStoryAreaTypeWeather);
      }
      break;
  }
  return orElse.call();
}