1use erjson::{JSONDocument, JSONValue};
2
3fn main() {
4 let data = r#"{
5 "name": "John Doe",
6 "age": 43,
7 "props": { "weight": 76, "height": 2.3 },
8 "primes": [ 11, 13, 17, 19, 23 ],
9 "colors": [ "red", "blue" ]
10 }"#;
11
12 let json = String::from(data);
13 let mut doc = JSONDocument::new();
14 match doc.parse_string(json) {
15 Ok(ref mut v) => {
16 println!("name: {}", v.get("name").unwrap()); println!("age: {}", v.get("age").unwrap()); match v {
19 JSONValue::Object(hm) => {
20 *hm.get_mut("age").unwrap() = JSONValue::Number(45f64);
21 }
22 _ => {}
23 };
24 println!("age: {}", v.get("age").unwrap()); }
26 Err(err) => print!("err: {}", err),
27 }
28}