maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult hiddenUser(
    1. StoryOriginHiddenUser value
    )?,
  2. TResult publicStory(
    1. StoryOriginPublicStory value
    )?,
  3. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(StoryOriginHiddenUser value)? hiddenUser,
  TResult Function(StoryOriginPublicStory value)? publicStory,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case StoryOriginHiddenUser.constructor:
      if (hiddenUser != null) {
        return hiddenUser.call(this as StoryOriginHiddenUser);
      }
      break;
    case StoryOriginPublicStory.constructor:
      if (publicStory != null) {
        return publicStory.call(this as StoryOriginPublicStory);
      }
      break;
  }
  return orElse.call();
}