Salut, voici ma structure
#[derive(Debug, PartialEq, Serialize, Deserialize)]
struct Record {
score_value: u32,
player_name: String, // does not implement `Copy`
timestamp_fake: u32,
}
des "instances":
let yesterdayscore = Record { score_value: 1500, player_name: "yesterdayscore".to_string(), timestamp_fake: 7000 };
let myscore = Record { score_value: 800, player_name: "myscore".to_string(), timestamp_fake: 8000 };
let friendscore = Record { score_value: 800, player_name: "friendscore".to_string(), timestamp_fake: 9000 };
et mon vecteur qui les contient:
let mut allscores :Vec<&Record> = Vec::new();
allscores.push(&yesterdayscore);
allscores.push(&myscore);
allscores.push(&friendscore);
ça sérialize mais ça ne deserialize pas ; pas besoin de lifetime dans mon cas.
let serialized = serde_json::to_string(&allscores).unwrap();
println!("serialized = {}", serialized);
let deserialized: std::vec::Vec<&Record> = serde_json::from_str(&serialized).unwrap();
ça m’étonne que rust ne pige pas la manoeuvre de lui même, python n’aurait pas bronché.L’ensemble est plutôt simple, pas de type venu du fin fond du cosmos… Comment écrire le déserializer et dois-je en plus faire un serializer ?
+0
-0