maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult photo(
    1. LinkPreviewAlbumMediaPhoto value
    )?,
  2. TResult video(
    1. LinkPreviewAlbumMediaVideo value
    )?,
  3. required TResult orElse(),
})

Implementation

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