aboutsummaryrefslogtreecommitdiff
path: root/mingling_macros/src/lib.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-04-09 15:12:11 +0800
committer魏曹先生 <1992414357@qq.com>2026-04-09 15:12:11 +0800
commit4764c3c818e3da16a3cba3b9877d9beb635e4237 (patch)
tree3adc438ca9b56f0fcd95354af4bd8329640ecce4 /mingling_macros/src/lib.rs
parent240361b240d638363346013160b0943b47769c37 (diff)
Add basic completion module with shell integration
Diffstat (limited to 'mingling_macros/src/lib.rs')
-rw-r--r--mingling_macros/src/lib.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/mingling_macros/src/lib.rs b/mingling_macros/src/lib.rs
index 4341669..ff43482 100644
--- a/mingling_macros/src/lib.rs
+++ b/mingling_macros/src/lib.rs
@@ -9,6 +9,8 @@ use quote::quote;
use syn::parse_macro_input;
mod chain;
+#[cfg(feature = "comp")]
+mod completion;
mod dispatcher_chain;
mod groupped;
mod node;
@@ -16,6 +18,8 @@ mod pack;
mod program_setup;
mod render;
mod renderer;
+#[cfg(feature = "comp")]
+mod suggest;
use once_cell::sync::Lazy;
use std::sync::Mutex;
@@ -70,6 +74,12 @@ pub fn renderer(_attr: TokenStream, item: TokenStream) -> TokenStream {
renderer::renderer_attr(item)
}
+#[cfg(feature = "comp")]
+#[proc_macro_attribute]
+pub fn completion(attr: TokenStream, item: TokenStream) -> TokenStream {
+ completion::completion_attr(attr, item)
+}
+
#[proc_macro_attribute]
pub fn program_setup(attr: TokenStream, item: TokenStream) -> TokenStream {
program_setup::setup_attr(attr, item)
@@ -243,3 +253,9 @@ pub fn __register_renderer(input: TokenStream) -> TokenStream {
TokenStream::new()
}
+
+#[cfg(feature = "comp")]
+#[proc_macro]
+pub fn suggest(input: TokenStream) -> TokenStream {
+ suggest::suggest(input)
+}