1个不稳定版本
0.1.0 | 2019年12月13日 |
---|
#1290 in 编码
98 每月下载量
用于 shaco
7KB
92 行
serde-single-key-map
使用serde解包单个键映射。
安装
将其添加到您的 Cargo.toml
[dependencies]
serde-single-key-map = "0.1"
用法
#[derive(Debug, Deserialize)]
struct Project {
name: String,
#[serde(deserialize_with = "serde_single_key_map::deserialize")]
items: Vec<Item>,
}
#[derive(Debug, Deserialize)]
struct Item {
name: String,
source: String,
}
fn main() {
let s = r#"{
"name": "test",
"items": {
"item": [
{
"name": "name",
"source": "name.rs"
}
]
}
}"#;
let project: Project = serde_json::from_str(s).expect("deserialize failed");
assert_eq!(project.name, "test");
assert_eq!(project.items.len(), 1);
let item = &project.items[0];
assert_eq!(item.name, "name");
assert_eq!(item.source, "name.rs");
}
许可协议
本作品采用MIT许可协议发布。许可协议的副本可在LICENSE文件中找到。
依赖项
~110–350KB