pub enum ToolInput {
Tool(Box<dyn AgentTool>),
Provider(Arc<dyn ToolProvider>),
Multiple(Vec<ToolInput>),
}Expand description
A tool input that can be processed by the registry.
Variants§
Tool(Box<dyn AgentTool>)
A single tool instance.
Provider(Arc<dyn ToolProvider>)
A tool provider.
Multiple(Vec<ToolInput>)
Multiple tool inputs (nested).
Implementations§
Source§impl ToolInput
impl ToolInput
Sourcepub fn provider(provider: impl ToolProvider + 'static) -> Self
pub fn provider(provider: impl ToolProvider + 'static) -> Self
Create a tool input from a ToolProvider.
Sourcepub fn multiple(inputs: impl IntoIterator<Item = ToolInput>) -> Self
pub fn multiple(inputs: impl IntoIterator<Item = ToolInput>) -> Self
Create a nested collection of tool inputs.
Auto Trait Implementations§
impl Freeze for ToolInput
impl !RefUnwindSafe for ToolInput
impl Send for ToolInput
impl Sync for ToolInput
impl Unpin 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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<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 moreCreates a shared type from an unshared type.