Merge branch master into unknown

Conflicts:
    serde_codegen/src/de.rs
This commit is contained in:
David Tolnay
2017-01-13 01:23:00 -08:00
2 changed files with 16 additions and 12 deletions
+10 -5
View File
@@ -492,7 +492,7 @@ fn deserialize_item_enum(
true,
);
let variant_names = variants.iter().map(|variant| variant.ident.to_string());
let variant_names = variants.iter().map(|variant| variant.attrs.name().deserialize_name());
let variants_stmt = quote! {
const VARIANTS: &'static [&'static str] = &[ #(#variant_names),* ];
@@ -702,11 +702,20 @@ fn deserialize_struct_visitor(
fields: &[Field],
item_attrs: &attr::Item,
) -> (Tokens, Tokens, Tokens) {
<<<<<<< HEAD
let field_names_idents = fields.iter()
.enumerate()
.filter(|&(_, field)| !field.attrs.skip_deserializing())
.map(|(i, field)| (field.attrs.name().deserialize_name(), field_i(i)))
||||||| merged common ancestors
let field_exprs = fields.iter()
.map(|field| field.attrs.name().deserialize_name())
=======
let field_exprs: Vec<_> = fields.iter()
.map(|field| field.attrs.name().deserialize_name())
>>>>>>> origin/master
.collect();
let field_names = field_exprs.clone();
let field_visitor = deserialize_field_visitor(
field_names_idents,
@@ -722,10 +731,6 @@ fn deserialize_struct_visitor(
item_attrs,
);
let field_names = fields.iter().map(|field| {
field.ident.clone().expect("struct contains unnamed field").to_string()
});
let fields_stmt = quote! {
const FIELDS: &'static [&'static str] = &[ #(#field_names),* ];
};