From caab6769843f3afc85a0a8f3c9d9193b71b6e800 Mon Sep 17 00:00:00 2001 From: naskya <m@naskya.net> Date: Sun, 21 Jul 2024 23:27:08 +0900 Subject: [PATCH] refactor (macro-rs): simplify error_variants_impl --- packages/macro-rs/macros-impl/src/error.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/macro-rs/macros-impl/src/error.rs b/packages/macro-rs/macros-impl/src/error.rs index a5d6fe4d38..e14ea70c94 100644 --- a/packages/macro-rs/macros-impl/src/error.rs +++ b/packages/macro-rs/macros-impl/src/error.rs @@ -9,10 +9,9 @@ pub fn error_variants(_attr: TokenStream, item: TokenStream) -> TokenStream { } fn error_variants_impl(item: TokenStream) -> syn::Result<TokenStream> { - let items: syn::ItemEnum = syn::parse2(item.clone())?; - let mut new_item = items.clone(); + let mut item: syn::ItemEnum = syn::parse2(item)?; - new_item.variants = items + item.variants = item .variants .into_iter() .map(|mut variant| { @@ -29,6 +28,7 @@ fn error_variants_impl(item: TokenStream) -> syn::Result<TokenStream> { Some(lit.value()) }); + // add #[doc] attribute if let Some(msg) = msg { variant.attrs.push(syn::parse_quote! { #[doc = #msg] }); } @@ -37,5 +37,5 @@ fn error_variants_impl(item: TokenStream) -> syn::Result<TokenStream> { }) .collect(); - Ok(quote! { #new_item }) + Ok(quote! { #item }) }