Sample code for 30+ languages & platforms
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

Rust
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());