[−][src]Function ejdb_sys::bson_fix_duplicate_keys
pub unsafe extern "C" fn bson_fix_duplicate_keys(
bsi: *const bson,
bso: *mut bson
)
Remove duplicate keys from bson:
- merge objects and arrays with same key: { a : { b : "value 1" }, a : { c : "value 2" } } -> { a : { b : "value 1", c : "value 2" } }
- keep last value for non object and non array values { a : "value 1", a : "value 2" } -> { a : "value 2" }
Example: { a : { b : 1, c : "c" }, b : NULL, c : [ { a : 1, b : 2, a : 0 }, { a : 0, b : 1, c : 3 } ], a : { d : 0, c : 1 } }
=>
{ a : { b : 1, c : 1, d : 0 }, b : NULL, c : [ { a : 0, b : 2 }, { a : 0, b : 1, c : 3 } ] }