commit | fc6d40cb22f6e0a9ecbb7ebf4e9fefd29a3faed2 | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <[email protected]> | Tue Oct 29 18:34:34 2024 +0000 |
committer | Android Build Coastguard Worker <[email protected]> | Tue Oct 29 18:34:34 2024 +0000 |
tree | 2c22d021d9d3861f1763852983a773ec7129d3e9 | |
parent | bdfc9d028356fa67ec434be2cdd330cebf0e955b [diff] | |
parent | 0ebb873bcaf9a4377a21a021e0c44079f1c9ea52 [diff] |
Snap for 12572747 from 0ebb873bcaf9a4377a21a021e0c44079f1c9ea52 to build-tools-release Change-Id: I11dc7f1caac0d2f364fcafc6ab9cadbc8b4bf1de
xml-rs
based deserializer for Serde (compatible with 1.0)
use serde::{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); }