From 29e6736d8d188f1046d43cc3795ba2c1c30b8797 Mon Sep 17 00:00:00 2001 From: Marc-Antoine Arnaud Date: Tue, 8 Oct 2019 09:04:29 +0200 Subject: [PATCH] format code --- yaserde/src/ser/mod.rs | 7 +- yaserde/tests/der_namespace.rs | 7 +- yaserde/tests/se_default.rs | 13 +- yaserde_derive/src/de/build_default_value.rs | 1 - yaserde_derive/src/de/expand_enum.rs | 200 ++++++++++++------- yaserde_derive/src/de/expand_struct.rs | 4 +- yaserde_derive/src/de/mod.rs | 11 +- yaserde_derive/src/ser/element.rs | 19 +- yaserde_derive/src/ser/expand_struct.rs | 23 ++- yaserde_derive/src/ser/mod.rs | 1 - 10 files changed, 172 insertions(+), 114 deletions(-) diff --git a/yaserde/src/ser/mod.rs b/yaserde/src/ser/mod.rs index 8b2642b..76a6994 100644 --- a/yaserde/src/ser/mod.rs +++ b/yaserde/src/ser/mod.rs @@ -12,7 +12,10 @@ pub fn to_string(model: &T) -> Result { Ok(String::from(data)) } -pub fn to_string_with_config(model: &T, _config: &Config) -> Result { +pub fn to_string_with_config( + model: &T, + _config: &Config, +) -> Result { let buf = Cursor::new(Vec::new()); let cursor = serialize_with_writer(model, buf)?; let data = str::from_utf8(cursor.get_ref()).expect("Found invalid UTF-8"); @@ -104,5 +107,5 @@ impl<'de, W: Write> Serializer { pub struct Config { perform_indent: bool, write_document_declaration: bool, - indent_string: Option + indent_string: Option, } diff --git a/yaserde/tests/der_namespace.rs b/yaserde/tests/der_namespace.rs index c99d8df..dabf6e5 100644 --- a/yaserde/tests/der_namespace.rs +++ b/yaserde/tests/der_namespace.rs @@ -23,7 +23,7 @@ fn de_struct_namespace() { root = "book", prefix = "ns", namespace = "ns: http://www.sample.com/ns/domain", - namespace = "ns2: http://www.sample.com/ns/domain_2", + namespace = "ns2: http://www.sample.com/ns/domain_2" )] pub struct Book { #[yaserde(prefix = "ns")] @@ -83,7 +83,10 @@ fn de_struct_namespace() { Little prince "#; let loaded: Result = from_str(content); - assert_eq!(loaded, Err("bad namespace for book, found http://www.sample.com/ns/domain2".to_string())); + assert_eq!( + loaded, + Err("bad namespace for book, found http://www.sample.com/ns/domain2".to_string()) + ); } #[test] diff --git a/yaserde/tests/se_default.rs b/yaserde/tests/se_default.rs index 5a1e690..21fcd7e 100644 --- a/yaserde/tests/se_default.rs +++ b/yaserde/tests/se_default.rs @@ -36,7 +36,8 @@ fn se_default_field_string() { }, content ); - let content = "my_value"; + let content = + "my_value"; convert_and_validate!( XmlStruct { background: "my_value".to_string(), @@ -61,13 +62,9 @@ fn se_default_field_boolean() { let content = ""; convert_and_validate!(XmlStruct { background: true }, content); - let content = "false"; - convert_and_validate!( - XmlStruct { - background: false, - }, - content - ); + let content = + "false"; + convert_and_validate!(XmlStruct { background: false }, content); } #[test] diff --git a/yaserde_derive/src/de/build_default_value.rs b/yaserde_derive/src/de/build_default_value.rs index 5ee953a..19843cc 100644 --- a/yaserde_derive/src/de/build_default_value.rs +++ b/yaserde_derive/src/de/build_default_value.rs @@ -1,4 +1,3 @@ - use proc_macro2::{Span, TokenStream}; use syn::Ident; diff --git a/yaserde_derive/src/de/expand_enum.rs b/yaserde_derive/src/de/expand_enum.rs index 8779d1f..e983118 100644 --- a/yaserde_derive/src/de/expand_enum.rs +++ b/yaserde_derive/src/de/expand_enum.rs @@ -1,4 +1,5 @@ use attribute::*; +use de::build_default_value::build_default_value; use field_type::*; use proc_macro2::{Span, TokenStream}; use quote::TokenStreamExt; @@ -6,7 +7,6 @@ use std::collections::BTreeMap; use syn::DataEnum; use syn::Fields; use syn::Ident; -use de::build_default_value::build_default_value; pub fn parse( data_enum: &DataEnum, @@ -28,42 +28,72 @@ pub fn parse( let field_attrs = YaSerdeAttribute::parse(&field.attrs); match get_field_type(field) { - Some(FieldType::FieldTypeString) => { - build_default_value(field_label, "e! {String}, "e! {"".to_string()}, &field_attrs.default) - } - Some(FieldType::FieldTypeBool) => { - build_default_value(field_label, "e! {bool}, "e! {false}, &field_attrs.default) - } + Some(FieldType::FieldTypeString) => build_default_value( + field_label, + "e! {String}, + "e! {"".to_string()}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeBool) => build_default_value( + field_label, + "e! {bool}, + "e! {false}, + &field_attrs.default, + ), Some(FieldType::FieldTypeI8) => { build_default_value(field_label, "e! {i8}, "e! {0}, &field_attrs.default) } Some(FieldType::FieldTypeU8) => { build_default_value(field_label, "e! {u8}, "e! {0}, &field_attrs.default) } - Some(FieldType::FieldTypeI16) => { - build_default_value(field_label, "e! {i16}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeU16) => { - build_default_value(field_label, "e! {u16}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeI32) => { - build_default_value(field_label, "e! {i32}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeU32) => { - build_default_value(field_label, "e! {u32}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeI64) => { - build_default_value(field_label, "e! {i64}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeU64) => { - build_default_value(field_label, "e! {u64}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeF32) => { - build_default_value(field_label, "e! {f32}, "e! {0}, &field_attrs.default) - } - Some(FieldType::FieldTypeF64) => { - build_default_value(field_label, "e! {f64}, "e! {0}, &field_attrs.default) - } + Some(FieldType::FieldTypeI16) => build_default_value( + field_label, + "e! {i16}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeU16) => build_default_value( + field_label, + "e! {u16}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeI32) => build_default_value( + field_label, + "e! {i32}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeU32) => build_default_value( + field_label, + "e! {u32}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeI64) => build_default_value( + field_label, + "e! {i64}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeU64) => build_default_value( + field_label, + "e! {u64}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeF32) => build_default_value( + field_label, + "e! {f32}, + "e! {0}, + &field_attrs.default, + ), + Some(FieldType::FieldTypeF64) => build_default_value( + field_label, + "e! {f64}, + "e! {0}, + &field_attrs.default, + ), Some(FieldType::FieldTypeStruct { struct_name }) => build_default_value( field_label, "e! {#struct_name}, @@ -88,42 +118,78 @@ pub fn parse( Some(FieldType::FieldTypeVec { data_type }) => { let dt = Box::into_raw(data_type); match unsafe { dt.as_ref() } { - Some(&FieldType::FieldTypeString) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeBool) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeI8) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeU8) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeI16) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeU16) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeI32) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeU32) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeI64) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeU64) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeF32) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } - Some(&FieldType::FieldTypeF64) => { - build_default_value(field_label, "e! {Vec}, "e! {vec![]}, &field_attrs.default) - } + Some(&FieldType::FieldTypeString) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeBool) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeI8) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeU8) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeI16) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeU16) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeI32) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeU32) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeI64) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeU64) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeF32) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), + Some(&FieldType::FieldTypeF64) => build_default_value( + field_label, + "e! {Vec}, + "e! {vec![]}, + &field_attrs.default, + ), Some(&FieldType::FieldTypeStruct { ref struct_name }) => build_default_value( field_label, "e! {Vec<#struct_name>}, diff --git a/yaserde_derive/src/de/expand_struct.rs b/yaserde_derive/src/de/expand_struct.rs index a07f124..4c61faf 100644 --- a/yaserde_derive/src/de/expand_struct.rs +++ b/yaserde_derive/src/de/expand_struct.rs @@ -1,11 +1,11 @@ use attribute::*; +use de::build_default_value::build_default_value; use field_type::*; use proc_macro2::{Span, TokenStream}; use quote::TokenStreamExt; use std::collections::BTreeMap; use syn::DataStruct; use syn::Ident; -use de::build_default_value::build_default_value; pub fn parse( data_struct: &DataStruct, @@ -14,7 +14,6 @@ pub fn parse( prefix: &Option, namespaces: &BTreeMap, ) -> TokenStream { - let namespaces_matches: TokenStream = namespaces .iter() .map(|(p, ns)| { @@ -1361,7 +1360,6 @@ fn build_call_visitor( prefix: &Option, namespaces: &BTreeMap, ) -> Option { - let namespaces_matches: TokenStream = namespaces .iter() .map(|(p, ns)| { diff --git a/yaserde_derive/src/de/mod.rs b/yaserde_derive/src/de/mod.rs index 02d9d93..617df1f 100644 --- a/yaserde_derive/src/de/mod.rs +++ b/yaserde_derive/src/de/mod.rs @@ -1,4 +1,3 @@ - pub mod build_default_value; pub mod expand_enum; pub mod expand_struct; @@ -17,9 +16,13 @@ pub fn expand_derive_deserialize(ast: &syn::DeriveInput) -> Result { - expand_struct::parse(data_struct, name, &root, &root_attrs.prefix, &root_attrs.namespaces) - } + syn::Data::Struct(ref data_struct) => expand_struct::parse( + data_struct, + name, + &root, + &root_attrs.prefix, + &root_attrs.namespaces, + ), syn::Data::Enum(ref data_enum) => { expand_enum::parse(data_enum, name, &root, &root_attrs.namespaces) } diff --git a/yaserde_derive/src/ser/element.rs b/yaserde_derive/src/ser/element.rs index 41a0abc..aa53b94 100644 --- a/yaserde_derive/src/ser/element.rs +++ b/yaserde_derive/src/ser/element.rs @@ -1,11 +1,6 @@ - use proc_macro2::{Ident, Span, TokenStream}; - -pub fn enclose_formatted_characters( - label: &Ident, - label_name: String - ) -> TokenStream { +pub fn enclose_formatted_characters(label: &Ident, label_name: String) -> TokenStream { quote! { let start_event = XmlEvent::start_element(#label_name); let _ret = writer.write(start_event); @@ -19,10 +14,7 @@ pub fn enclose_formatted_characters( } } -pub fn enclose_formatted_characters_for_value( - label: &Ident, - label_name: String - ) -> TokenStream { +pub fn enclose_formatted_characters_for_value(label: &Ident, label_name: String) -> TokenStream { quote! { let start_event = XmlEvent::start_element(#label_name); let _ret = writer.write(start_event); @@ -36,10 +28,7 @@ pub fn enclose_formatted_characters_for_value( } } -pub fn enclose_characters( - label: &Option, - label_name: String - ) -> TokenStream { +pub fn enclose_characters(label: &Option, label_name: String) -> TokenStream { quote! { let start_event = XmlEvent::start_element(#label_name); let _ret = writer.write(start_event); @@ -57,7 +46,7 @@ pub fn serialize_element( label: &Option, label_name: String, default: &Option, - ) -> Option { +) -> Option { let inner = enclose_characters(label, label_name); if let Some(ref d) = default { diff --git a/yaserde_derive/src/ser/expand_struct.rs b/yaserde_derive/src/ser/expand_struct.rs index a4dd1a1..36f3320 100644 --- a/yaserde_derive/src/ser/expand_struct.rs +++ b/yaserde_derive/src/ser/expand_struct.rs @@ -79,7 +79,7 @@ pub fn serialize( }); }) } - }, + } Some(FieldType::FieldTypeOption { data_type }) => { let dt = Box::into_raw(data_type); match unsafe { dt.as_ref() } { @@ -108,7 +108,7 @@ pub fn serialize( }; }) } - }, + } Some(&FieldType::FieldTypeBool) | Some(&FieldType::FieldTypeI8) | Some(&FieldType::FieldTypeU8) @@ -160,7 +160,7 @@ pub fn serialize( }; }) } - }, + } Some(&FieldType::FieldTypeVec { .. }) => { let item_ident = Ident::new("yas_item", Span::call_site()); let inner = enclose_formatted_characters(&item_ident, label_name); @@ -184,7 +184,7 @@ pub fn serialize( } }) } - }, + } _ => unimplemented!(), } } @@ -228,7 +228,7 @@ pub fn serialize( }); }) } - }, + } _ => None, } }) @@ -293,8 +293,9 @@ pub fn serialize( | Some(FieldType::FieldTypeI64) | Some(FieldType::FieldTypeU64) | Some(FieldType::FieldTypeF32) - | Some(FieldType::FieldTypeF64) => - serialize_element(label, label_name, &field_attrs.default), + | Some(FieldType::FieldTypeF64) => { + serialize_element(label, label_name, &field_attrs.default) + } Some(FieldType::FieldTypeOption { data_type }) => { let dt = Box::into_raw(data_type); match unsafe { dt.as_ref() } { @@ -330,7 +331,7 @@ pub fn serialize( } }) } - }, + } Some(&FieldType::FieldTypeVec { .. }) => { let item_ident = Ident::new("yas_item", Span::call_site()); let inner = enclose_formatted_characters_for_value(&item_ident, label_name); @@ -356,7 +357,7 @@ pub fn serialize( } }) } - }, + } Some(&FieldType::FieldTypeStruct { .. }) => Some(quote! { if let Some(ref item) = &self.#label { writer.set_start_event_name(Some(#label_name.to_string())); @@ -416,7 +417,7 @@ pub fn serialize( #inner } }) - }, + } Some(&FieldType::FieldTypeBool) | Some(&FieldType::FieldTypeI8) | Some(&FieldType::FieldTypeU8) @@ -436,7 +437,7 @@ pub fn serialize( #inner } }) - }, + } Some(&FieldType::FieldTypeOption { .. }) => Some(quote! { for item in &self.#label { if let Some(value) = item { diff --git a/yaserde_derive/src/ser/mod.rs b/yaserde_derive/src/ser/mod.rs index 1dfbde0..edeabfe 100644 --- a/yaserde_derive/src/ser/mod.rs +++ b/yaserde_derive/src/ser/mod.rs @@ -1,4 +1,3 @@ - pub mod element; pub mod expand_enum; pub mod expand_struct;