maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult emoji(
    1. ChatThemeEmoji value
    )?,
  2. TResult gift(
    1. ChatThemeGift value
    )?,
  3. required TResult orElse(),
})

Implementation

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