update format

This commit is contained in:
Marc-Antoine Arnaud 2018-05-24 17:39:39 +02:00
parent 98f1a0c146
commit dfe276d231
4 changed files with 32 additions and 14 deletions

View File

@ -38,8 +38,8 @@ macro_rules! convert_and_validate_for_attribute {
let model = Data { item: $value };
let content = String::from("<?xml version=\"1.0\" encoding=\"utf-8\"?><data item=\"") + $content
+ "\" />";
let content =
String::from("<?xml version=\"1.0\" encoding=\"utf-8\"?><data item=\"") + $content + "\" />";
let loaded: Result<Data, String> = from_str(&content);
assert_eq!(loaded, Ok(model));

View File

@ -36,8 +36,8 @@ macro_rules! convert_and_validate_as_attribute {
let model = Data { item: $value };
let data: Result<String, String> = to_string(&model);
let content = String::from("<?xml version=\"1.0\" encoding=\"utf-8\"?><data item=\"") + $content
+ "\" />";
let content =
String::from("<?xml version=\"1.0\" encoding=\"utf-8\"?><data item=\"") + $content + "\" />";
assert_eq!(data, Ok(content));
}};
}

View File

@ -569,15 +569,33 @@ pub fn parse(
}
}
}),
Some(FieldType::FieldTypeBool) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_bool}, &visitor_label),
Some(FieldType::FieldTypeI8) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i8}, &visitor_label),
Some(FieldType::FieldTypeU8) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u8}, &visitor_label),
Some(FieldType::FieldTypeI16) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i16}, &visitor_label),
Some(FieldType::FieldTypeU16) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u16}, &visitor_label),
Some(FieldType::FieldTypeI32) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i32}, &visitor_label),
Some(FieldType::FieldTypeU32) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u32}, &visitor_label),
Some(FieldType::FieldTypeI64) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i64}, &visitor_label),
Some(FieldType::FieldTypeU64) => build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u64}, &visitor_label),
Some(FieldType::FieldTypeBool) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_bool}, &visitor_label)
}
Some(FieldType::FieldTypeI8) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i8}, &visitor_label)
}
Some(FieldType::FieldTypeU8) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u8}, &visitor_label)
}
Some(FieldType::FieldTypeI16) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i16}, &visitor_label)
}
Some(FieldType::FieldTypeU16) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u16}, &visitor_label)
}
Some(FieldType::FieldTypeI32) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i32}, &visitor_label)
}
Some(FieldType::FieldTypeU32) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u32}, &visitor_label)
}
Some(FieldType::FieldTypeI64) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_i64}, &visitor_label)
}
Some(FieldType::FieldTypeU64) => {
build_call_visitor_for_attribute(&label, &label_name, &quote!{visit_u64}, &visitor_label)
}
Some(FieldType::FieldTypeStruct { struct_name }) => {
let struct_ident = Ident::new(

View File

@ -52,7 +52,7 @@ pub fn serialize(
mem::forget(content);
ret
}
})
}),
Some(FieldType::FieldTypeStruct { .. }) => Some(quote!{