mapOrNull<TResult extends Object?> method
- @optionalTypeArgs
- TResult? preview(
- PaidMediaPreview value
- TResult? photo(
- PaidMediaPhoto value
- TResult? video(
- PaidMediaVideo value
A variant of map that fallback to returning null.
It is equivalent to doing:
switch (sealedClass) {
case final Subclass value:
return ...;
case _:
return null;
}
Implementation
@optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
TResult? Function(PaidMediaPreview value)? preview,
TResult? Function(PaidMediaPhoto value)? photo,
TResult? Function(PaidMediaVideo value)? video,
}) {
final _that = this;
switch (_that) {
case PaidMediaPreview() when preview != null:
return preview(_that);
case PaidMediaPhoto() when photo != null:
return photo(_that);
case PaidMediaVideo() when video != null:
return video(_that);
case _:
return null;
}
}