Utilities for working with serde_json::Map structures as "dot maps".
[dependencies]
dot_json = "0.2"
See also: https://github.com/serde-rs/json#constructing-json-values
#[macro_use]externcrate serde_json;externcrate dot_json;use dot_json::value_to_dot;use serde_json::{Map,Value};fnmain(){let obj = json!({"foo":"Lorem ipsum","bar":[123, null,{"baz":"Dolor sit amet"}],"qux":{"deep":{"one":true,"two":false,}}});let obj_dot = value_to_dot(&obj);// obj_dot is now: {// "foo": "Lorem ipsum",// "bar.0": 123,// "bar.1": null,// "bar.2.baz": "Dolor sit amet",// "qux.deep.one": true,// "qux.deep.two": false// }assert_eq!(Value::Null, obj_dot["bar.1"]);assert_eq!(Value::Bool(false), obj_dot["qux.deep.two"]);let arr = json!([{"foo",false},
null
]);let arr_dot = value_to_dot(&arr);assert_eq!(Value::Bool(false), arr["0.foo"]);assert_eq!(Value::Null, arr["1"]);}Used by value_to_dot and arr_to_dot_map to convert deep serde_json::Map to shallow dot maps.
Used by value_to_dot to convert deep serde_json::Value::Array vectors to shallow dot maps.