Skip to content

Commit

Permalink
Simplify code after dead code elimination
Browse files Browse the repository at this point in the history
  • Loading branch information
Mingun committed Jun 9, 2023
1 parent 2ae8d99 commit 75f5613
Showing 1 changed file with 6 additions and 16 deletions.
22 changes: 6 additions & 16 deletions serde_derive/src/de.rs
Expand Up @@ -594,11 +594,10 @@ fn deserialize_tuple_in_place(
}
};

let type_name = cattrs.name().deserialize_name();
let dispatch = if nfields == 1 {
let type_name = cattrs.name().deserialize_name();
quote!(_serde::Deserializer::deserialize_newtype_struct(__deserializer, #type_name, #visitor_expr))
} else {
let type_name = cattrs.name().deserialize_name();
quote!(_serde::Deserializer::deserialize_tuple_struct(__deserializer, #type_name, #field_count, #visitor_expr))
};

Expand Down Expand Up @@ -1092,19 +1091,7 @@ fn deserialize_struct_in_place(
let field_names = field_names_idents
.iter()
.flat_map(|(_, _, aliases)| aliases);

let visitor_expr = quote! {
__Visitor {
place: __place,
lifetime: _serde::__private::PhantomData,
}
};
let dispatch = {
let type_name = cattrs.name().deserialize_name();
quote! {
_serde::Deserializer::deserialize_struct(__deserializer, #type_name, FIELDS, #visitor_expr)
}
};
let type_name = cattrs.name().deserialize_name();

let in_place_impl_generics = de_impl_generics.in_place();
let in_place_ty_generics = de_ty_generics.in_place();
Expand Down Expand Up @@ -1146,7 +1133,10 @@ fn deserialize_struct_in_place(
#[doc(hidden)]
const FIELDS: &'static [&'static str] = &[ #(#field_names),* ];

#dispatch
_serde::Deserializer::deserialize_struct(__deserializer, #type_name, FIELDS, __Visitor {
place: __place,
lifetime: _serde::__private::PhantomData,
})
})
}

Expand Down

0 comments on commit 75f5613

Please sign in to comment.