From 757b1e412c8617cacd8ba0e428554e7f44e9d0e8 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Thu, 25 Jun 2026 13:29:08 +0800 Subject: fix(dispatch_tree): use proper snake_case for dispatcher static names Fix the static name generation for dispatch tree nodes to use a correct snake_case conversion instead of a simple `.` to `_` replacement. Also correct the `__comp` completion dispatcher name from triple underscore to double underscore, resolving a mismatch between `register_dispatcher!` and `program_comp_gen` --- mingling_macros/src/dispatcher.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'mingling_macros/src/dispatcher.rs') diff --git a/mingling_macros/src/dispatcher.rs b/mingling_macros/src/dispatcher.rs index 51dce95..36bdf31 100644 --- a/mingling_macros/src/dispatcher.rs +++ b/mingling_macros/src/dispatcher.rs @@ -1,3 +1,5 @@ +#[cfg(feature = "dispatch_tree")] +use just_fmt::snake_case; use proc_macro::TokenStream; use proc_macro2::TokenStream as TokenStream2; use quote::quote; @@ -215,7 +217,7 @@ pub fn register_dispatcher(input: TokenStream) -> TokenStream { } = syn::parse_macro_input!(input as RegisterDispatcherInput); let node_name_str = node_name.value(); - let static_name = format!("__internal_dispatcher_{}", node_name_str.replace('.', "_")); + let static_name = format!("__internal_dispatcher_{}", snake_case!(node_name_str.clone())); let static_ident = Ident::new(&static_name, proc_macro2::Span::call_site()); // Register node info in the global collection at compile time -- cgit