#[non_exhaustive]pub struct Tool {
pub function_declarations: Vec<FunctionDeclaration>,
pub google_search_retrieval: Option<GoogleSearchRetrieval>,
pub code_execution: Option<CodeExecution>,
pub google_search: Option<GoogleSearch>,
pub computer_use: Option<ComputerUse>,
pub url_context: Option<UrlContext>,
pub file_search: Option<FileSearch>,
pub mcp_servers: Vec<McpServer>,
pub google_maps: Option<GoogleMaps>,
pub extra: ExtraFields,
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.function_declarations: Vec<FunctionDeclaration>§google_search_retrieval: Option<GoogleSearchRetrieval>§code_execution: Option<CodeExecution>§google_search: Option<GoogleSearch>§computer_use: Option<ComputerUse>§url_context: Option<UrlContext>§file_search: Option<FileSearch>§mcp_servers: Vec<McpServer>§google_maps: Option<GoogleMaps>§extra: ExtraFieldsImplementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Tool
impl<'de> Deserialize<'de> for Tool
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Tool
Auto Trait Implementations§
impl Freeze for Tool
impl RefUnwindSafe for Tool
impl Send for Tool
impl Sync for Tool
impl Unpin for Tool
impl UnsafeUnpin for Tool
impl UnwindSafe for Tool
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more