maybeMap<TResult extends Object?> method

  1. @optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
  1. TResult queueActivity(
    1. UReportCreateActivityActivityQueueActivity value
    )?,
  2. TResult assignmentActivity(
    1. UReportCreateActivityActivityAssignmentActivity value
    )?,
  3. TResult escalationActivity(
    1. UReportCreateActivityActivityEscalationActivity value
    )?,
  4. TResult closeActivity(
    1. UReportCreateActivityActivityCloseActivity value
    )?,
  5. TResult reopenActivity(
    1. UReportCreateActivityActivityReopenActivity value
    )?,
  6. TResult noteActivity(
    1. UReportCreateActivityActivityNoteActivity value
    )?,
  7. TResult unknown(
    1. UReportCreateActivityActivityUnknown value
    )?,
  8. 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( UReportCreateActivityActivityQueueActivity value)?  queueActivity,TResult Function( UReportCreateActivityActivityAssignmentActivity value)?  assignmentActivity,TResult Function( UReportCreateActivityActivityEscalationActivity value)?  escalationActivity,TResult Function( UReportCreateActivityActivityCloseActivity value)?  closeActivity,TResult Function( UReportCreateActivityActivityReopenActivity value)?  reopenActivity,TResult Function( UReportCreateActivityActivityNoteActivity value)?  noteActivity,TResult Function( UReportCreateActivityActivityUnknown value)?  unknown,required TResult orElse(),}){
final _that = this;
switch (_that) {
case UReportCreateActivityActivityQueueActivity() when queueActivity != null:
return queueActivity(_that);case UReportCreateActivityActivityAssignmentActivity() when assignmentActivity != null:
return assignmentActivity(_that);case UReportCreateActivityActivityEscalationActivity() when escalationActivity != null:
return escalationActivity(_that);case UReportCreateActivityActivityCloseActivity() when closeActivity != null:
return closeActivity(_that);case UReportCreateActivityActivityReopenActivity() when reopenActivity != null:
return reopenActivity(_that);case UReportCreateActivityActivityNoteActivity() when noteActivity != null:
return noteActivity(_that);case UReportCreateActivityActivityUnknown() when unknown != null:
return unknown(_that);case _:
  return orElse();

}
}