#[non_exhaustive]pub struct AssistantContent {
pub role: String,
pub thought: bool,
pub data: Option<Data>,
/* private fields */
}assistant-service or conversational-search-service or session-service only.Expand description
Multi-modal content.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.role: StringThe producer of the content. Can be “model” or “user”.
thought: boolOptional. Indicates if the part is thought from the model.
data: Option<Data>Contained data.
Implementations§
Source§impl AssistantContent
impl AssistantContent
pub fn new() -> Self
Sourcepub fn set_thought<T: Into<bool>>(self, v: T) -> Self
pub fn set_thought<T: Into<bool>>(self, v: T) -> Self
Sourcepub fn text(&self) -> Option<&String>
pub fn text(&self) -> Option<&String>
The value of data
if it holds a Text, None if the field is not set or
holds a different branch.
Sourcepub fn set_text<T: Into<String>>(self, v: T) -> Self
pub fn set_text<T: Into<String>>(self, v: T) -> Self
Sets the value of data
to hold a Text.
Note that all the setters affecting data are
mutually exclusive.
§Example
let x = AssistantContent::new().set_text("example");
assert!(x.text().is_some());
assert!(x.inline_data().is_none());
assert!(x.file().is_none());
assert!(x.executable_code().is_none());
assert!(x.code_execution_result().is_none());Sourcepub fn inline_data(&self) -> Option<&Box<Blob>>
pub fn inline_data(&self) -> Option<&Box<Blob>>
The value of data
if it holds a InlineData, None if the field is not set or
holds a different branch.
Sourcepub fn set_inline_data<T: Into<Box<Blob>>>(self, v: T) -> Self
pub fn set_inline_data<T: Into<Box<Blob>>>(self, v: T) -> Self
Sets the value of data
to hold a InlineData.
Note that all the setters affecting data are
mutually exclusive.
§Example
use google_cloud_discoveryengine_v1::model::assistant_content::Blob;
let x = AssistantContent::new().set_inline_data(Blob::default()/* use setters */);
assert!(x.inline_data().is_some());
assert!(x.text().is_none());
assert!(x.file().is_none());
assert!(x.executable_code().is_none());
assert!(x.code_execution_result().is_none());Sourcepub fn file(&self) -> Option<&Box<File>>
pub fn file(&self) -> Option<&Box<File>>
The value of data
if it holds a File, None if the field is not set or
holds a different branch.
Sourcepub fn set_file<T: Into<Box<File>>>(self, v: T) -> Self
pub fn set_file<T: Into<Box<File>>>(self, v: T) -> Self
Sets the value of data
to hold a File.
Note that all the setters affecting data are
mutually exclusive.
§Example
use google_cloud_discoveryengine_v1::model::assistant_content::File;
let x = AssistantContent::new().set_file(File::default()/* use setters */);
assert!(x.file().is_some());
assert!(x.text().is_none());
assert!(x.inline_data().is_none());
assert!(x.executable_code().is_none());
assert!(x.code_execution_result().is_none());Sourcepub fn executable_code(&self) -> Option<&Box<ExecutableCode>>
pub fn executable_code(&self) -> Option<&Box<ExecutableCode>>
The value of data
if it holds a ExecutableCode, None if the field is not set or
holds a different branch.
Sourcepub fn set_executable_code<T: Into<Box<ExecutableCode>>>(self, v: T) -> Self
pub fn set_executable_code<T: Into<Box<ExecutableCode>>>(self, v: T) -> Self
Sets the value of data
to hold a ExecutableCode.
Note that all the setters affecting data are
mutually exclusive.
§Example
use google_cloud_discoveryengine_v1::model::assistant_content::ExecutableCode;
let x = AssistantContent::new().set_executable_code(ExecutableCode::default()/* use setters */);
assert!(x.executable_code().is_some());
assert!(x.text().is_none());
assert!(x.inline_data().is_none());
assert!(x.file().is_none());
assert!(x.code_execution_result().is_none());Sourcepub fn code_execution_result(&self) -> Option<&Box<CodeExecutionResult>>
pub fn code_execution_result(&self) -> Option<&Box<CodeExecutionResult>>
The value of data
if it holds a CodeExecutionResult, None if the field is not set or
holds a different branch.
Sourcepub fn set_code_execution_result<T: Into<Box<CodeExecutionResult>>>(
self,
v: T,
) -> Self
pub fn set_code_execution_result<T: Into<Box<CodeExecutionResult>>>( self, v: T, ) -> Self
Sets the value of data
to hold a CodeExecutionResult.
Note that all the setters affecting data are
mutually exclusive.
§Example
use google_cloud_discoveryengine_v1::model::assistant_content::CodeExecutionResult;
let x = AssistantContent::new().set_code_execution_result(CodeExecutionResult::default()/* use setters */);
assert!(x.code_execution_result().is_some());
assert!(x.text().is_none());
assert!(x.inline_data().is_none());
assert!(x.file().is_none());
assert!(x.executable_code().is_none());Trait Implementations§
Source§impl Clone for AssistantContent
impl Clone for AssistantContent
Source§fn clone(&self) -> AssistantContent
fn clone(&self) -> AssistantContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more