pub struct MockObjectOutputTool;Available on crate feature
test-utils only.Expand description
A mock tool that returns a JSON object.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for MockObjectOutputTool
impl<'de> Deserialize<'de> for MockObjectOutputTool
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
Source§impl Serialize for MockObjectOutputTool
impl Serialize for MockObjectOutputTool
Source§impl Tool for MockObjectOutputTool
impl Tool for MockObjectOutputTool
Source§const NAME: &'static str = "object_output"
const NAME: &'static str = "object_output"
The name of the tool. This name should be unique within a single
ToolSet or other registration scope that dispatches tools by name.Source§type Error = MockToolError
type Error = MockToolError
The error type of the tool.
Source§fn description(&self) -> String
fn description(&self) -> String
Model-facing description of what the tool does.
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
JSON Schema for the tool arguments.
Source§async fn call(&self, _args: Self::Args) -> Result<Self::Output, Self::Error>
async fn call(&self, _args: Self::Args) -> Result<Self::Output, Self::Error>
The tool execution method.
Both the arguments and return value are a String since these values are meant to
be the output and input of LLM models (respectively)
Source§fn call_with_extensions(
&self,
args: Self::Args,
_extensions: &ToolCallExtensions,
) -> impl Future<Output = Result<Self::Output, Self::Error>> + WasmCompatSend
fn call_with_extensions( &self, args: Self::Args, _extensions: &ToolCallExtensions, ) -> impl Future<Output = Result<Self::Output, Self::Error>> + WasmCompatSend
Tool execution with per-call runtime extensions. Read more
Source§fn classify_error(&self, error: &Self::Error) -> ToolFailure
fn classify_error(&self, error: &Self::Error) -> ToolFailure
Classify an error returned by this tool into a structured
ToolFailure. Read moreSource§fn call_structured(
&self,
args: Self::Args,
extensions: &ToolCallExtensions,
) -> impl Future<Output = Result<ToolReturn<Self::Output>, Self::Error>> + WasmCompatSend
fn call_structured( &self, args: Self::Args, extensions: &ToolCallExtensions, ) -> impl Future<Output = Result<ToolReturn<Self::Output>, Self::Error>> + WasmCompatSend
Execute the tool, returning a structured
ToolReturn instead of a bare
output. Read moreAuto Trait Implementations§
impl Freeze for MockObjectOutputTool
impl RefUnwindSafe for MockObjectOutputTool
impl Send for MockObjectOutputTool
impl Sync for MockObjectOutputTool
impl Unpin for MockObjectOutputTool
impl UnsafeUnpin for MockObjectOutputTool
impl UnwindSafe for MockObjectOutputTool
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> ToolDyn for Twhere
T: Tool,
impl<T> ToolDyn for Twhere
T: Tool,
Source§fn call_structured<'a>(
&'a self,
args: String,
extensions: &'a ToolCallExtensions,
) -> Pin<Box<dyn Future<Output = ToolExecutionResult> + Send + 'a>>
fn call_structured<'a>( &'a self, args: String, extensions: &'a ToolCallExtensions, ) -> Pin<Box<dyn Future<Output = ToolExecutionResult> + Send + 'a>>
Routes through Tool::call_structured so rich returns
(ToolReturn) and Tool::classify_error are honored: a JSON
argument parse failure becomes an
InvalidArgs outcome, a returned
Err(Self::Error) is classified, and a successful ToolReturn is
serialized while preserving its outcome and extensions.
Source§fn description(&self) -> String
fn description(&self) -> String
Model-facing description of what the tool does.
Source§fn parameters(&self) -> Value
fn parameters(&self) -> Value
JSON Schema for the tool arguments.