whenOrNull<TResult extends Object?> method
- @optionalTypeArgs
- TResult? embedRecordViewRecord()?,
- TResult? embedRecordViewNotFound()?,
- TResult? embedRecordViewBlocked()?,
- TResult? embedRecordViewDetached()?,
- TResult? generatorView(
- GeneratorView data
- TResult? listView(
- ListView data
- TResult? labelerView(
- LabelerView data
- TResult? starterPackViewBasic(
- StarterPackViewBasic data
- TResult? unknown()?,
A variant of when
that fallback to returning null
It is equivalent to doing:
switch (sealedClass) {
case Subclass(:final field):
return ...;
case _:
return null;
}
Implementation
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>({TResult? Function( EmbedRecordViewRecord data)? embedRecordViewRecord,TResult? Function( EmbedRecordViewNotFound data)? embedRecordViewNotFound,TResult? Function( EmbedRecordViewBlocked data)? embedRecordViewBlocked,TResult? Function( EmbedRecordViewDetached data)? embedRecordViewDetached,TResult? Function( GeneratorView data)? generatorView,TResult? Function( ListView data)? listView,TResult? Function( LabelerView data)? labelerView,TResult? Function( StarterPackViewBasic data)? starterPackViewBasic,TResult? Function( Map<String, dynamic> data)? unknown,}) {final _that = this;
switch (_that) {
case UEmbedRecordViewRecordEmbedRecordViewRecord() when embedRecordViewRecord != null:
return embedRecordViewRecord(_that.data);case UEmbedRecordViewRecordEmbedRecordViewNotFound() when embedRecordViewNotFound != null:
return embedRecordViewNotFound(_that.data);case UEmbedRecordViewRecordEmbedRecordViewBlocked() when embedRecordViewBlocked != null:
return embedRecordViewBlocked(_that.data);case UEmbedRecordViewRecordEmbedRecordViewDetached() when embedRecordViewDetached != null:
return embedRecordViewDetached(_that.data);case UEmbedRecordViewRecordGeneratorView() when generatorView != null:
return generatorView(_that.data);case UEmbedRecordViewRecordListView() when listView != null:
return listView(_that.data);case UEmbedRecordViewRecordLabelerView() when labelerView != null:
return labelerView(_that.data);case UEmbedRecordViewRecordStarterPackViewBasic() when starterPackViewBasic != null:
return starterPackViewBasic(_that.data);case UEmbedRecordViewRecordUnknown() when unknown != null:
return unknown(_that.data);case _:
return null;
}
}