Rust
Rust
Firebase JSON Put and Patch
See more JSON Examples
Demonstrates how to apply Firebase put and patch events to a JSON database.Chilkat Rust Downloads
let json1 = "{\"a\": 1, \"b\": 2}".to_string();
let json = chilkat::JsonObject::new();
// Use Firebase delimiters for JSON paths.
json.set_delimiter_char("/");
let _ = json.load(&json1);
let _ = json.firebase_put("/c", "{\"foo\": true, \"bar\": false}");
// Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
println!("1) {}", json.emit().unwrap_or_default());
let _ = json.firebase_put("/c", "\"hello world\"");
// Output should be: {"a":1,"b":2,"c":"hello world"}
println!("2) {}", json.emit().unwrap_or_default());
let _ = json.firebase_put("/c", "{\"foo\": \"abc\", \"bar\": 123}");
// Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
println!("3) {}", json.emit().unwrap_or_default());
// Back to the original..
let _ = json.firebase_put("/", "{\"a\": 1, \"b\": 2}");
println!("4) {}", json.emit().unwrap_or_default());
let _ = json.firebase_put("/c", "{\"foo\": true, \"bar\": false}");
let _ = json.firebase_patch("/c", "{\"foo\": 3, \"baz\": 4}");
// Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
println!("5) {}", json.emit().unwrap_or_default());
let _ = json.firebase_patch("/c", "{\"foo\": \"abc123\", \"baz\": {\"foo\": true, \"bar\": false}, \"bax\": {\"foo\": 200, \"bar\": 400} }");
// Output should be: {"a":1,"b":2,"c":{"foo":"abc123","bar":false,"baz":{"foo":true,"bar":false},"bax":{"foo":200,"bar":400}}}
println!("6) {}", json.emit().unwrap_or_default());