maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult customEmoji(
    1. StickerTypeCustomEmoji value
    )?,
  2. TResult mask(
    1. StickerTypeMask value
    )?,
  3. TResult regular(
    1. StickerTypeRegular value
    )?,
  4. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(StickerTypeCustomEmoji value)? customEmoji,
  TResult Function(StickerTypeMask value)? mask,
  TResult Function(StickerTypeRegular value)? regular,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case StickerTypeCustomEmoji.constructor:
      if (customEmoji != null) {
        return customEmoji.call(this as StickerTypeCustomEmoji);
      }
      break;
    case StickerTypeMask.constructor:
      if (mask != null) {
        return mask.call(this as StickerTypeMask);
      }
      break;
    case StickerTypeRegular.constructor:
      if (regular != null) {
        return regular.call(this as StickerTypeRegular);
      }
      break;
  }
  return orElse.call();
}