pub enum ToolInput {
String {
value: String,
},
Object {
value: Value,
},
}Expand description
Tool input type
Uses internally tagged serialization to avoid untagged ambiguity:
- String inputs are tagged with
"type": "string" - Object inputs are tagged with
"type": "object"
A TryFrom<serde_json::Value> implementation validates incoming untagged
JSON and dispatches to the correct variant.
Variants§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ToolInput
impl<'de> Deserialize<'de> for ToolInput
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
Auto Trait Implementations§
impl Freeze for ToolInput
impl RefUnwindSafe for ToolInput
impl Send for ToolInput
impl Sync for ToolInput
impl Unpin for ToolInput
impl UnsafeUnpin for ToolInput
impl UnwindSafe for ToolInput
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