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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more