pub struct ToolIndex { /* private fields */ }Expand description
Index of all registered tools for semantic search.
Implementations§
Source§impl ToolIndex
impl ToolIndex
Sourcepub fn new(config: ToolSearchConfig) -> Self
pub fn new(config: ToolSearchConfig) -> Self
Create a new tool index with the given configuration.
Sourcepub fn add(&mut self, name: &str, description: &str, extra_keywords: &[&str])
pub fn add(&mut self, name: &str, description: &str, extra_keywords: &[&str])
Add a tool to the index.
Sourcepub fn search(&self, query: &str, max_results: usize) -> Vec<ToolMatch>
pub fn search(&self, query: &str, max_results: usize) -> Vec<ToolMatch>
Search for tools relevant to the given query.
Returns tools sorted by relevance score (highest first),
limited to max_results entries.
Sourcepub fn tool_names(&self) -> Vec<&str>
pub fn tool_names(&self) -> Vec<&str>
Get all tool names in the index.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ToolIndex
impl RefUnwindSafe for ToolIndex
impl Send for ToolIndex
impl Sync for ToolIndex
impl Unpin for ToolIndex
impl UnsafeUnpin for ToolIndex
impl UnwindSafe for ToolIndex
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