maybeMap<TResult extends Object?> method

  1. @optionalTypeArgs
TResult maybeMap<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
    )?,
  6. required TResult orElse(),
})

A variant of map that fallback to returning orElse.

It is equivalent to doing:

switch (sealedClass) {
  case final Subclass value:
    return ...;
  case _:
    return orElse();
}

Implementation

@optionalTypeArgs TResult maybeMap<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,required TResult orElse(),}){
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 orElse();

}
}