pub struct FuzzyCompletionHandler { /* private fields */ }Expand description
Fuzzy string completion handler
Provides fuzzy matching completion for string-based arguments. Useful for prompt names, tool names, and other predefined lists.
§Features
- Fuzzy matching with customizable similarity threshold
- Case-insensitive matching
- Substring and prefix matching
- Custom scoring algorithm
§Example
use prism_mcp_rs::core::completion_handlers::FuzzyCompletionHandler;
let handler = FuzzyCompletionHandler::new(vec![
"analyze_data", "analyze_text", "create_report", "generate_summary"
]).threshold(0.6);Implementations§
Source§impl FuzzyCompletionHandler
impl FuzzyCompletionHandler
Trait Implementations§
Source§impl CompletionHandler for FuzzyCompletionHandler
impl CompletionHandler for FuzzyCompletionHandler
Source§fn complete<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_reference: &'life1 CompletionReference,
argument: &'life2 CompletionArgument,
_context: Option<&'life3 CompletionContext>,
) -> Pin<Box<dyn Future<Output = McpResult<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn complete<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_reference: &'life1 CompletionReference,
argument: &'life2 CompletionArgument,
_context: Option<&'life3 CompletionContext>,
) -> Pin<Box<dyn Future<Output = McpResult<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Generate completion suggestions Read more
Auto Trait Implementations§
impl Freeze for FuzzyCompletionHandler
impl RefUnwindSafe for FuzzyCompletionHandler
impl Send for FuzzyCompletionHandler
impl Sync for FuzzyCompletionHandler
impl Unpin for FuzzyCompletionHandler
impl UnsafeUnpin for FuzzyCompletionHandler
impl UnwindSafe for FuzzyCompletionHandler
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].