diff options
Diffstat (limited to 'mingling_macros/src/completion.rs')
| -rw-r--r-- | mingling_macros/src/completion.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mingling_macros/src/completion.rs b/mingling_macros/src/completion.rs index 51e1cea..fcb9784 100644 --- a/mingling_macros/src/completion.rs +++ b/mingling_macros/src/completion.rs @@ -63,14 +63,18 @@ pub fn completion_attr(attr: TokenStream, item: TokenStream) -> TokenStream { // Get function name let fn_name = &sig.ident; - // Generate struct name from function name using pascal_case - let pascal_case_name = just_fmt::pascal_case!(fn_name.to_string()); - let struct_name = Ident::new(&pascal_case_name, fn_name.span()); + // Generate internal name from function name using snake_case + let internal_name = format!( + "__internal_completion_{}", + just_fmt::snake_case!(fn_name.to_string()) + ); + let struct_name = Ident::new(&internal_name, fn_name.span()); // Generate the struct and implementation let expanded = quote! { #(#fn_attrs)* #[doc(hidden)] + #[allow(non_camel_case_types)] #vis struct #struct_name; impl ::mingling::Completion for #struct_name { |
