commit | c4bf39299df58ba706994c40c0af808af57be0aa | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Oct 02 05:06:19 2021 +0000 |
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Oct 02 05:06:19 2021 +0000 |
tree | 7b6f9d20d96c4c5c29bc92e4207af555ef14f372 | |
parent | c405d4cbcca6b81485cf0db06e7c3f395421b5c8 [diff] | |
parent | 2633b9320774050c6dd1d5a8d08df8b1e199263e [diff] |
Snap for 7787597 from 2633b9320774050c6dd1d5a8d08df8b1e199263e to tm-release Change-Id: I9615ca8968d002a144e3df39e47eaae45650cc8e
xml-rs
based deserializer for Serde (compatible with 1.0)
use serde; use serde_derive::{Deserialize, Serialize}; use serde_xml_rs::{from_str, to_string}; #[derive(Debug, Serialize, Deserialize, PartialEq)] struct Item { name: String, source: String, } fn main() { let src = r#"<Item><name>Banana</name><source>Store</source></Item>"#; let should_be = Item { name: "Banana".to_string(), source: "Store".to_string(), }; let item: Item = from_str(src).unwrap(); assert_eq!(item, should_be); let reserialized_item = to_string(&item).unwrap(); assert_eq!(src, reserialized_item); }