From ba733ffaffd78ecc4220106b21a57ed3b2893636 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sat, 18 Apr 2026 00:24:05 +0800 Subject: Extract chain and renderer registration into separate macros --- mingling_macros/src/lib.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'mingling_macros/src/lib.rs') diff --git a/mingling_macros/src/lib.rs b/mingling_macros/src/lib.rs index 8ddda8b..5391dfd 100644 --- a/mingling_macros/src/lib.rs +++ b/mingling_macros/src/lib.rs @@ -169,9 +169,6 @@ pub fn program_gen_completion(input: TokenStream) -> TokenStream { TokenStream::from(comp_dispatcher) } -/// Internal macro for registering types. -/// -/// This macro is used internally by the `#[chain]` and `#[renderer]` attribute macros #[proc_macro] pub fn register_type(input: TokenStream) -> TokenStream { let type_ident = parse_macro_input!(input as syn::Ident); @@ -182,6 +179,16 @@ pub fn register_type(input: TokenStream) -> TokenStream { TokenStream::new() } +#[proc_macro] +pub fn register_chain(input: TokenStream) -> TokenStream { + chain::register_chain(input) +} + +#[proc_macro] +pub fn register_renderer(input: TokenStream) -> TokenStream { + renderer::register_renderer(input) +} + #[proc_macro] pub fn program_final_gen(input: TokenStream) -> TokenStream { let name = read_name(&input); -- cgit