map<TResult extends Object?> method
- @optionalTypeArgs
- required TResult audioInput(
- AudioInput value
- required TResult sessionSettings(
- SessionSettings value
- required TResult userInput(
- UserInput value
- required TResult assistantInput(
- AssistantInput value
- required TResult toolResponse(
- ToolResponseMessage value
- required TResult toolError(
- ToolErrorMessage value
- required TResult pauseAssistantMessage(
- PauseAssistantMessage value
- required TResult resumeAssistantMessage(
- ResumeAssistantMessage value
A switch-like method, using callbacks.
Callbacks receives the raw object, upcasted. It is equivalent to doing:
switch (sealedClass) {
case final Subclass value:
return ...;
case final Subclass2 value:
return ...;
}
Implementation
@optionalTypeArgs TResult map<TResult extends Object?>({required TResult Function( AudioInput value) audioInput,required TResult Function( SessionSettings value) sessionSettings,required TResult Function( UserInput value) userInput,required TResult Function( AssistantInput value) assistantInput,required TResult Function( ToolResponseMessage value) toolResponse,required TResult Function( ToolErrorMessage value) toolError,required TResult Function( PauseAssistantMessage value) pauseAssistantMessage,required TResult Function( ResumeAssistantMessage value) resumeAssistantMessage,}){
final _that = this;
switch (_that) {
case AudioInput():
return audioInput(_that);case SessionSettings():
return sessionSettings(_that);case UserInput():
return userInput(_that);case AssistantInput():
return assistantInput(_that);case ToolResponseMessage():
return toolResponse(_that);case ToolErrorMessage():
return toolError(_that);case PauseAssistantMessage():
return pauseAssistantMessage(_that);case ResumeAssistantMessage():
return resumeAssistantMessage(_that);}
}