use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize, Debug)]
struct Size {
width: i32,
height: i32,
}
#[derive(Serialize, Deserialize, Debug)]
struct Rect {
size: Size,
}
let rect: Rect = Rect {
size: Size {
width: 5,
height: 10,
}
};
//Encoding Binary Data
if let Ok(data_b) = bincode::serialize(&rect) {
//data_b is [5, 0, 0, 0, 10, 0, 0, 0]
println!("{:?}", data_b);
//Decoding Binary Data
let mut cursor = &data_b[..];
let rect2: Rect = bincode::
deserialize_from(&mut cursor).unwrap();
println!("rect2 is {:?}", rect2);
}