#Could you help me to achieve a desired output with serde?

2 messages · Page 1 of 1 (latest)

grave comet
#

Here is the playground: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=8e88609565d23bc74cfe09d8ea5048b5

I just want to get a flat JSON array from a enum Vec, but I don't know how to do it.

#[derive(Deserialize, Serialize, Debug)]
pub enum Cell {
    #[serde(rename = "B")]
    Blank,
    #[serde(rename = "M")]
    Mine,
    Number(u32),
}
type Board = Vec<Cell>;
// Later...
let serialized_board = serde_json::to_string(&board).unwrap();
println!("{}", serialized_board);
// Actual output: ["M","B",{"Number":2},{"Number":3},"B"]
// Wanted output: ["M","B",2,3,"B"]
mild quail