diff options
| author | Christine Dodrill <me@christine.website> | 2020-09-27 12:35:24 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-27 12:35:24 -0400 |
| commit | f106c2c9d23c9c12a88b5a73f704f4be5c455926 (patch) | |
| tree | 6b3888c1bcf2f8c379acbc897bab7f3fa7b9c8ca /examples/json.rs | |
| parent | e460ebdcbee67224a3f9872b0a59e6f2733b6861 (diff) | |
| download | xesite-f106c2c9d23c9c12a88b5a73f704f4be5c455926.tar.xz xesite-f106c2c9d23c9c12a88b5a73f704f4be5c455926.zip | |
go-stdlib-rust post (#215)
Diffstat (limited to 'examples/json.rs')
| -rw-r--r-- | examples/json.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/json.rs b/examples/json.rs new file mode 100644 index 0000000..bf128ed --- /dev/null +++ b/examples/json.rs @@ -0,0 +1,32 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Author { + pub id: i32, + pub name: String, +} + +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct Comment { + pub id: i32, + pub author: Author, + pub body: String, + pub in_reply_to: i32, +} + +fn main() { + let data = r#" + { + "id": 31337, + "author": { + "id": 420, + "name": "Cadey" + }, + "body": "hahaha its is an laughter image", + "in_reply_to": 31335 + } + "#; + + let c: Comment = serde_json::from_str(data).expect("json to parse"); + println!("comment: {:#?}", c); +} |
