I have a pre-defined struct
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
struct Foo<T>
where T: Serialize
{
foo: T
}
struct Bar{
a: String
}
struct Bar2{
b: String
}
fn main() -> Result<()>
{
let a1 = Bar {a: "something".to_owned(),};
let a2 = Bar {a: "something2".to_owned(),};
let a_vec: Vec<Bar> = vec![a1, a2];
let b = Bar2 {b: "something"}
let b_vec: Vec<Bar2> = vec![b];
//let foo = Foo {foo: vec![a_vec,b_vec]}
}
How can I put both struct under Foo
or is it possible to first serialize Bar
to json and add Bar2
as string literals? The result would be a json
{"foo": [{"a": "something"}, {"a": "something2"}], "b": "something"}