pub struct ToolRegistry { /* private fields */ }Expand description
Registry of built-in tool definitions.
Implementations§
Source§impl ToolRegistry
impl ToolRegistry
Sourcepub fn new(user_tools: HashMap<String, ToolDefinition>) -> Self
pub fn new(user_tools: HashMap<String, ToolDefinition>) -> Self
Create a new registry with user-defined tools.
Sourcepub fn get(&self, tool_id: &str) -> Option<&ToolDefinition>
pub fn get(&self, tool_id: &str) -> Option<&ToolDefinition>
Get a tool definition by ID.
Checks user tools first, then falls back to built-in tools.
Sourcepub fn contains(&self, tool_id: &str) -> bool
pub fn contains(&self, tool_id: &str) -> bool
Check if a tool ID is valid (either user-defined or built-in).
Sourcepub fn list_tools(&self) -> Vec<&str>
pub fn list_tools(&self) -> Vec<&str>
List all available tool IDs.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ToolRegistry
impl RefUnwindSafe for ToolRegistry
impl Send for ToolRegistry
impl Sync for ToolRegistry
impl Unpin for ToolRegistry
impl UnwindSafe for ToolRegistry
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 more