pub struct ToolProcessor;Expand description
Handles all tool-related operations in a centralized manner
Implementations§
Source§impl ToolProcessor
impl ToolProcessor
Sourcepub async fn process_tool_calls(
tools: &[Box<dyn ToolT>],
tool_calls: Vec<ToolCall>,
context: ToolCallContext,
tx_event: Option<Sender<Event>>,
) -> Vec<ToolCallResult>
pub async fn process_tool_calls( tools: &[Box<dyn ToolT>], tool_calls: Vec<ToolCall>, context: ToolCallContext, tx_event: Option<Sender<Event>>, ) -> Vec<ToolCallResult>
Process multiple tool calls and return results
Sourcepub fn create_result_tool_calls(
tool_calls: &[ToolCall],
tool_results: &[ToolCallResult],
) -> Vec<ToolCall>
pub fn create_result_tool_calls( tool_calls: &[ToolCall], tool_results: &[ToolCallResult], ) -> Vec<ToolCall>
Convert tool results to tool calls for memory storage
Auto Trait Implementations§
impl Freeze for ToolProcessor
impl RefUnwindSafe for ToolProcessor
impl Send for ToolProcessor
impl Sync for ToolProcessor
impl Unpin for ToolProcessor
impl UnsafeUnpin for ToolProcessor
impl UnwindSafe for ToolProcessor
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> 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> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage