From 6703ccb0fc3aca7ba4bdb9083f199fe0c1b66bd9 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Thu, 7 May 2026 20:53:04 +0800 Subject: Add dispatch tree feature for fast argument matching --- mingling_core/src/asset/comp.rs | 2 +- mingling_core/src/asset/dispatcher.rs | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'mingling_core/src/asset') diff --git a/mingling_core/src/asset/comp.rs b/mingling_core/src/asset/comp.rs index a6299e1..cf1f48c 100644 --- a/mingling_core/src/asset/comp.rs +++ b/mingling_core/src/asset/comp.rs @@ -51,7 +51,7 @@ impl CompletionHelper { let program = this::

(); let args = ctx.all_words.iter().skip(1).cloned().collect::>(); - let suggest = if let Ok((dispatcher, args)) = match_user_input(program, args) { + let suggest = if let Ok((dispatcher, args)) = match_user_input(program, &args) { trace!( "dispatcher matched, dispatcher=\"{}\", args={:?}", dispatcher.node().to_string(), diff --git a/mingling_core/src/asset/dispatcher.rs b/mingling_core/src/asset/dispatcher.rs index 761c399..cf8fcca 100644 --- a/mingling_core/src/asset/dispatcher.rs +++ b/mingling_core/src/asset/dispatcher.rs @@ -29,6 +29,7 @@ where impl Program { /// Adds a dispatcher to the program. + #[cfg(not(feature = "dispatch_tree"))] pub fn with_dispatcher(&mut self, dispatcher: Disp) where Disp: Dispatcher + Send + Sync + 'static, @@ -37,6 +38,7 @@ impl Program { } /// Add some dispatchers to the program. + #[cfg(not(feature = "dispatch_tree"))] pub fn with_dispatchers(&mut self, dispatchers: D) where D: Into>, -- cgit