pub struct MockSubtractTool;Available on crate feature
test-utils only.Expand description
A mock tool that subtracts y from x.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for MockSubtractTool
impl<'de> Deserialize<'de> for MockSubtractTool
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 MockSubtractTool
impl Serialize for MockSubtractTool
Source§impl Tool for MockSubtractTool
impl Tool for MockSubtractTool
Source§const NAME: &'static str = "subtract"
const NAME: &'static str = "subtract"
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§type Args = MockOperationArgs
type Args = MockOperationArgs
The arguments 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 MockSubtractTool
impl RefUnwindSafe for MockSubtractTool
impl Send for MockSubtractTool
impl Sync for MockSubtractTool
impl Unpin for MockSubtractTool
impl UnsafeUnpin for MockSubtractTool
impl UnwindSafe for MockSubtractTool
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.