Simplify deserialize_seq_in_place

This commit is contained in:
David Tolnay 2018-05-20 12:36:42 -07:00
parent 7ada27014d
commit 5302482596
No known key found for this signature in database
GPG Key ID: F9BA143B95FF6D82

View File

@ -676,8 +676,6 @@ fn deserialize_seq_in_place(
cattrs: &attr::Container,
expecting: &str,
) -> Fragment {
let vars = (0..fields.len()).map(field_i as fn(_) -> _);
// XXX: do we need an error for flattening here?
let deserialized_count = fields
@ -691,10 +689,7 @@ fn deserialize_seq_in_place(
};
let mut index_in_seq = 0usize;
let write_values = vars
.clone()
.zip(fields)
.map(|(_, field)| {
let write_values = fields.iter().map(|field| {
let member = &field.member;
if field.attrs.skip_deserializing() {
@ -717,8 +712,7 @@ fn deserialize_seq_in_place(
}
}
Some(path) => {
let (wrapper, wrapper_ty) =
wrap_deserialize_field_with(params, field.ty, path);
let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
quote!({
#wrapper
match try!(_serde::de::SeqAccess::next_element::<#wrapper_ty>(&mut __seq)) {