whenOrNull<TResult extends Object?> method
- @optionalTypeArgs
- TResult? logBeginConvo(
- LogBeginConvo data
- TResult? logAcceptConvo(
- LogAcceptConvo data
- TResult? logLeaveConvo(
- LogLeaveConvo data
- TResult? logMuteConvo(
- LogMuteConvo data
- TResult? logUnmuteConvo(
- LogUnmuteConvo data
- TResult? logCreateMessage(
- LogCreateMessage data
- TResult? logDeleteMessage(
- LogDeleteMessage data
- TResult? logReadMessage(
- LogReadMessage data
- TResult? logAddReaction(
- LogAddReaction data
- TResult? logRemoveReaction(
- LogRemoveReaction 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( LogBeginConvo data)? logBeginConvo,TResult? Function( LogAcceptConvo data)? logAcceptConvo,TResult? Function( LogLeaveConvo data)? logLeaveConvo,TResult? Function( LogMuteConvo data)? logMuteConvo,TResult? Function( LogUnmuteConvo data)? logUnmuteConvo,TResult? Function( LogCreateMessage data)? logCreateMessage,TResult? Function( LogDeleteMessage data)? logDeleteMessage,TResult? Function( LogReadMessage data)? logReadMessage,TResult? Function( LogAddReaction data)? logAddReaction,TResult? Function( LogRemoveReaction data)? logRemoveReaction,TResult? Function( Map<String, dynamic> data)? unknown,}) {final _that = this;
switch (_that) {
case UConvoGetLogLogsLogBeginConvo() when logBeginConvo != null:
return logBeginConvo(_that.data);case UConvoGetLogLogsLogAcceptConvo() when logAcceptConvo != null:
return logAcceptConvo(_that.data);case UConvoGetLogLogsLogLeaveConvo() when logLeaveConvo != null:
return logLeaveConvo(_that.data);case UConvoGetLogLogsLogMuteConvo() when logMuteConvo != null:
return logMuteConvo(_that.data);case UConvoGetLogLogsLogUnmuteConvo() when logUnmuteConvo != null:
return logUnmuteConvo(_that.data);case UConvoGetLogLogsLogCreateMessage() when logCreateMessage != null:
return logCreateMessage(_that.data);case UConvoGetLogLogsLogDeleteMessage() when logDeleteMessage != null:
return logDeleteMessage(_that.data);case UConvoGetLogLogsLogReadMessage() when logReadMessage != null:
return logReadMessage(_that.data);case UConvoGetLogLogsLogAddReaction() when logAddReaction != null:
return logAddReaction(_that.data);case UConvoGetLogLogsLogRemoveReaction() when logRemoveReaction != null:
return logRemoveReaction(_that.data);case UConvoGetLogLogsUnknown() when unknown != null:
return unknown(_that.data);case _:
return null;
}
}