diff --git a/serde_codegen/src/de.rs b/serde_codegen/src/de.rs index 680c534b..dd97407f 100644 --- a/serde_codegen/src/de.rs +++ b/serde_codegen/src/de.rs @@ -62,10 +62,9 @@ fn build_impl_generics(item: &Item) -> syn::Generics { let generics = bound::with_bound(item, &generics, needs_deserialize_bound, &aster::path().ids(&["_serde", "de", "Deserialize"]).build()); - let generics = bound::with_bound(item, &generics, + bound::with_bound(item, &generics, requires_default, - &aster::path().global().ids(&["std", "default", "Default"]).build()); - generics + &aster::path().global().ids(&["std", "default", "Default"]).build()) } } } @@ -325,7 +324,7 @@ fn deserialize_seq( } Some(path) => { let (wrapper, wrapper_impl, wrapper_ty) = wrap_deserialize_with( - type_ident, impl_generics, &field.ty, path); + type_ident, impl_generics, field.ty, path); quote!({ #wrapper #wrapper_impl @@ -390,7 +389,7 @@ fn deserialize_newtype_struct( } Some(path) => { let (wrapper, wrapper_impl, wrapper_ty) = wrap_deserialize_with( - type_ident, impl_generics, &field.ty, path); + type_ident, impl_generics, field.ty, path); quote!({ #wrapper #wrapper_impl @@ -421,7 +420,7 @@ fn deserialize_struct( let (visitor_item, visitor_ty, visitor_expr) = deserialize_visitor(impl_generics); let type_path = match variant_ident { - Some(ref variant_ident) => quote!(#type_ident::#variant_ident), + Some(variant_ident) => quote!(#type_ident::#variant_ident), None => quote!(#type_ident), }; @@ -580,7 +579,7 @@ fn deserialize_variant( Style::Newtype => { deserialize_newtype_variant( type_ident, - &variant_ident, + variant_ident, generics, &variant.fields[0], ) @@ -621,7 +620,7 @@ fn deserialize_newtype_variant( } Some(path) => { let (wrapper, wrapper_impl, wrapper_ty) = wrap_deserialize_with( - type_ident, impl_generics, &field.ty, path); + type_ident, impl_generics, field.ty, path); quote!({ #wrapper #wrapper_impl @@ -719,7 +718,7 @@ fn deserialize_field_visitor( // Match arms to extract a field from a string let bytes_field_arms: Vec<_> = field_idents.iter().zip(field_names.iter()) .map(|(field_ident, field_name)| { - let bytes_field_name = quote::ByteStr(&field_name); + let bytes_field_name = quote::ByteStr(field_name); quote! { #bytes_field_name => { Ok(__Field::#field_ident) } } @@ -849,7 +848,7 @@ fn deserialize_map( // Match arms to extract a value for a field. let value_arms = fields_names.iter() .filter(|&&(field, _)| !field.attrs.skip_deserializing()) - .map(|&(ref field, ref name)| { + .map(|&(field, ref name)| { let deser_name = field.attrs.name().deserialize_name(); let visit = match field.attrs.deserialize_with() { @@ -861,7 +860,7 @@ fn deserialize_map( } Some(path) => { let (wrapper, wrapper_impl, wrapper_ty) = wrap_deserialize_with( - type_ident, impl_generics, &field.ty, path); + type_ident, impl_generics, field.ty, path); quote!({ #wrapper #wrapper_impl diff --git a/serde_codegen/src/ser.rs b/serde_codegen/src/ser.rs index 08aebb83..bb1c1089 100644 --- a/serde_codegen/src/ser.rs +++ b/serde_codegen/src/ser.rs @@ -140,7 +140,7 @@ fn serialize_newtype_struct( let mut field_expr = quote!(&self.0); if let Some(path) = field.attrs.serialize_with() { field_expr = wrap_serialize_with( - &item_ty, impl_generics, &field.ty, path, field_expr); + &item_ty, impl_generics, field.ty, path, field_expr); } quote! { @@ -342,7 +342,7 @@ fn serialize_newtype_variant( let mut field_expr = quote!(__simple_value); if let Some(path) = field.attrs.serialize_with() { field_expr = wrap_serialize_with( - &item_ty, generics, &field.ty, path, field_expr); + &item_ty, generics, field.ty, path, field_expr); } quote! { @@ -397,7 +397,7 @@ fn serialize_struct_variant( let serialize_fields = serialize_struct_visitor( ty.clone(), fields, - &generics, + generics, true, aster::id("serialize_struct_variant_elt"), ); @@ -455,7 +455,7 @@ fn serialize_tuple_struct_visitor( if let Some(path) = field.attrs.serialize_with() { field_expr = wrap_serialize_with( - &structure_ty, generics, &field.ty, path, field_expr); + &structure_ty, generics, field.ty, path, field_expr); } let ser = quote! { @@ -494,7 +494,7 @@ fn serialize_struct_visitor( if let Some(path) = field.attrs.serialize_with() { field_expr = wrap_serialize_with( - &structure_ty, generics, &field.ty, path, field_expr) + &structure_ty, generics, field.ty, path, field_expr) } let ser = quote! {