aboutsummaryrefslogtreecommitdiff
path: root/mingling_macros/src/groupped.rs
diff options
context:
space:
mode:
authorWeicao-CatilGrass <1992414357@qq.com>2026-05-31 02:42:52 +0800
committer魏曹先生 <1992414357@qq.com>2026-05-31 17:19:20 +0800
commit2aa7bda3cb21ce6c052b82e08bcab79a625d04f2 (patch)
treef10b89007fc67ca1a948f34abe6869b49296b932 /mingling_macros/src/groupped.rs
parent3aa409a55e4f2f0ab41b0949cc06eb13c2da4a43 (diff)
Enhance code quality across the entire codebase
Diffstat (limited to 'mingling_macros/src/groupped.rs')
-rw-r--r--mingling_macros/src/groupped.rs22
1 files changed, 8 insertions, 14 deletions
diff --git a/mingling_macros/src/groupped.rs b/mingling_macros/src/groupped.rs
index e385812..534e2a6 100644
--- a/mingling_macros/src/groupped.rs
+++ b/mingling_macros/src/groupped.rs
@@ -23,13 +23,10 @@ pub fn derive_groupped(input: TokenStream) -> TokenStream {
// Parse attributes to find #[group(...)]
let group_ident: proc_macro2::TokenStream = parse_group_attribute(&input.attrs)
- .map(|ident| quote! { #ident })
- .unwrap_or_else(crate::default_program_path);
+ .map_or_else(crate::default_program_path, |ident| quote! { #ident });
- let any_output_convert_impls = proc_macro2::TokenStream::from(build_any_output_convert_impls(
- struct_name.clone(),
- group_ident.clone(),
- ));
+ let any_output_convert_impls =
+ proc_macro2::TokenStream::from(build_any_output_convert_impls(&struct_name, &group_ident));
// Generate the Groupped trait implementation
let expanded = quote! {
@@ -55,13 +52,10 @@ pub fn derive_groupped_serialize(input: TokenStream) -> TokenStream {
// Parse attributes to find #[group(...)]
let group_ident: proc_macro2::TokenStream = parse_group_attribute(&input_parsed.attrs)
- .map(|ident| quote! { #ident })
- .unwrap_or_else(crate::default_program_path);
+ .map_or_else(crate::default_program_path, |ident| quote! { #ident });
- let any_output_convert_impls = proc_macro2::TokenStream::from(build_any_output_convert_impls(
- struct_name.clone(),
- group_ident.clone(),
- ));
+ let any_output_convert_impls =
+ proc_macro2::TokenStream::from(build_any_output_convert_impls(&struct_name, &group_ident));
// Generate both Serialize and Groupped implementations
let expanded = quote! {
@@ -83,8 +77,8 @@ pub fn derive_groupped_serialize(input: TokenStream) -> TokenStream {
}
fn build_any_output_convert_impls(
- struct_name: Ident,
- group_ident: proc_macro2::TokenStream,
+ struct_name: &Ident,
+ group_ident: &proc_macro2::TokenStream,
) -> TokenStream {
quote! {
impl ::std::convert::Into<::mingling::AnyOutput<#group_ident>> for #struct_name {