From 6805bba308654ec9628831143d42e367c88e0db2 Mon Sep 17 00:00:00 2001 From: Mingun Date: Thu, 29 May 2025 01:20:04 +0500 Subject: [PATCH] Inline variables that used only once --- serde_derive/src/de.rs | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/serde_derive/src/de.rs b/serde_derive/src/de.rs index b54a155e..cbd4536e 100644 --- a/serde_derive/src/de.rs +++ b/serde_derive/src/de.rs @@ -1486,21 +1486,6 @@ fn deserialize_adjacently_tagged_enum( quote! { _serde::#private::de::TagContentOtherFieldVisitor } }; - let tag_or_content = quote! { - #field_visitor_ty { - tag: #tag, - content: #content, - } - }; - - let variant_seed = quote! { - _serde::#private::de::AdjacentlyTaggedEnumVariantSeed::<__Field> { - enum_name: #rust_name, - variants: VARIANTS, - fields_enum: _serde::#private::PhantomData - } - }; - let mut missing_content = quote! { _serde::#private::Err(<__A::Error as _serde::de::Error>::missing_field(#content)) }; @@ -1545,11 +1530,18 @@ fn deserialize_adjacently_tagged_enum( // Advance the map by one key, returning early in case of error. let next_key = quote! { - _serde::de::MapAccess::next_key_seed(&mut __map, #tag_or_content)? + _serde::de::MapAccess::next_key_seed(&mut __map, #field_visitor_ty { + tag: #tag, + content: #content, + })? }; let variant_from_map = quote! { - _serde::de::MapAccess::next_value_seed(&mut __map, #variant_seed)? + _serde::de::MapAccess::next_value_seed(&mut __map, _serde::#private::de::AdjacentlyTaggedEnumVariantSeed::<__Field> { + enum_name: #rust_name, + variants: VARIANTS, + fields_enum: _serde::#private::PhantomData + })? }; // When allowing unknown fields, we want to transparently step through keys