Crates.io | json_value_remove |
lib.rs | json_value_remove |
version | 1.0.2 |
source | src |
created_at | 2021-09-02 17:47:08.902374 |
updated_at | 2021-12-17 22:12:08.553893 |
description | Interface to remove serde_json::Value elements. |
homepage | |
repository | https://github.com/jmfiaschi/json_value_remove |
max_upload_size | |
id | 446104 |
size | 21,069 |
Give an interface to remove element into a json_serde::Value.
[dependencies]
json_value_remove = "1.0"
Remove in an array:
extern crate json_value_remove;
use json_value_remove::Remove;
use serde_json::Value;
{
let mut array1: Value = serde_json::from_str(r#"{"my_table":["a","b","c"]}"#).unwrap();
assert_eq!(Some(Value::String("a".to_string())), array1.remove("/my_table/0").unwrap());
assert_eq!(r#"{"my_table":["b","c"]}"#, array1.to_string());
}
Remove in an objects:
extern crate json_value_remove;
use json_value_remove::Remove;
use serde_json::Value;
{
let mut object1: Value = serde_json::from_str(r#"{"field1.0":{"field1.1":"value1.1","field1.2":"value1.2"},"field2.0":"value2.0"}"#).unwrap();
assert_eq!(Some(Value::String("value1.2".to_string())), object1.remove("/field1.0/field1.2").unwrap());
assert_eq!(r#"{"field1.0":{"field1.1":"value1.1"},"field2.0":"value2.0"}"#,object1.to_string());
}
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.