whenOrNull<TResult extends Object?> method
- @optionalTypeArgs
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( String content, String toolCallId, String? customSessionId, String? toolName, String? toolType)? response,TResult? Function( String error, String toolCallId, String? code, String? content, String? customSessionId, String? level, String? toolType)? error,}) {final _that = this;
switch (_that) {
case _ToolResponse() when response != null:
return response(_that.content,_that.toolCallId,_that.customSessionId,_that.toolName,_that.toolType);case _ToolError() when error != null:
return error(_that.error,_that.toolCallId,_that.code,_that.content,_that.customSessionId,_that.level,_that.toolType);case _:
return null;
}
}