【发布时间】:2017-06-01 08:41:55
【问题描述】:
我想从Test对象本身的数据中反序列化Test::team_size属性:
#[derive(Debug, Serialize, Deserialize)]
struct TeamSize {
pub min: i64,
pub max: i64,
}
#[derive(Debug, Serialize, Deserialize)]
struct Test {
pub i: i64,
pub team_size: TeamSize,
}
fn main() {
let t: Test = serde_json::from_str(r#"{"i": -2, "min": 2, "max": 5}"#).unwrap();
assert_eq!(t.i, -2);
assert_eq!(t.team_size.min, 2);
assert_eq!(t.team_size.max, 5);
}
这段代码无法编译,我不知道如何让 Serde 做我想做的事。有没有办法从作为子字段的原始结构的 JSON 反序列化此示例中的 team_size?
似乎我想要类似 #[serde(untagged)] 的东西,但是对于一个结构和一个字段而不是整个结构。
【问题讨论】:
-
相关问题:serde#119