mapOrNull<TResult extends Object?> method

  1. @optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
  1. TResult? repoView(
    1. UModEventViewDetailSubjectRepoView value
    )?,
  2. TResult? repoViewNotFound(
    1. UModEventViewDetailSubjectRepoViewNotFound value
    )?,
  3. TResult? recordView(
    1. UModEventViewDetailSubjectRecordView value
    )?,
  4. TResult? recordViewNotFound(
    1. UModEventViewDetailSubjectRecordViewNotFound value
    )?,
  5. TResult? unknown(
    1. UModEventViewDetailSubjectUnknown 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( UModEventViewDetailSubjectRepoView value)?  repoView,TResult? Function( UModEventViewDetailSubjectRepoViewNotFound value)?  repoViewNotFound,TResult? Function( UModEventViewDetailSubjectRecordView value)?  recordView,TResult? Function( UModEventViewDetailSubjectRecordViewNotFound value)?  recordViewNotFound,TResult? Function( UModEventViewDetailSubjectUnknown value)?  unknown,}){
final _that = this;
switch (_that) {
case UModEventViewDetailSubjectRepoView() when repoView != null:
return repoView(_that);case UModEventViewDetailSubjectRepoViewNotFound() when repoViewNotFound != null:
return repoViewNotFound(_that);case UModEventViewDetailSubjectRecordView() when recordView != null:
return recordView(_that);case UModEventViewDetailSubjectRecordViewNotFound() when recordViewNotFound != null:
return recordViewNotFound(_that);case UModEventViewDetailSubjectUnknown() when unknown != null:
return unknown(_that);case _:
  return null;

}
}