Trait JsonUtils

Source
pub trait JsonUtils {
    // Required methods
    fn skip_null(&mut self);
    fn skip_null_and_empty(&mut self);
    fn dedup(&mut self);
    fn merge_similar(&mut self);
}

Required Methods§

Source

fn skip_null(&mut self)

Remove Null value fields from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"{"key1": null, "key2": "foo"}"###).unwrap();
let x_result: Value = from_str(r###"{"key2": "foo"}"###).unwrap();

x.skip_null();
assert_eq!(x, x_result);
Source

fn skip_null_and_empty(&mut self)

Remove Null value fields & empty value fields from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"{"key1": null, "key2": "foo", "key3": [], "key4": {}}"###).unwrap();
let x_result: Value = from_str(r###"{"key2": "foo"}"###).unwrap();

x.skip_null_and_empty();
assert_eq!(x, x_result);
Source

fn dedup(&mut self)

Dedup array of json’s from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"[{"key1": "foo", "key2": "bar", "key3": [1, 1, 2]}, {"key1": "foo", "key2": "bar", "key3": [1, 1, 2]}]"###).unwrap();
let x_result: Value = from_str(r###"[{"key1": "foo", "key2": "bar", "key3": [1, 2]}]"###).unwrap();

x.dedup();
assert_eq!(x, x_result);
Source

fn merge_similar(&mut self)

Implementations on Foreign Types§

Source§

impl JsonUtils for Value

Source§

fn skip_null(&mut self)

Remove Null value fields from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"{"key1": null, "key2": "foo"}"###).unwrap();
let x_result: Value = from_str(r###"{"key2": "foo"}"###).unwrap();

x.skip_null();
assert_eq!(x, x_result);
Source§

fn skip_null_and_empty(&mut self)

Remove Null value fields & empty value fields from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"{"key1": null, "key2": "foo", "key3": [], "key4": {}}"###).unwrap();
let x_result: Value = from_str(r###"{"key2": "foo"}"###).unwrap();

x.skip_null_and_empty();
assert_eq!(x, x_result);
Source§

fn dedup(&mut self)

Dedup array of json’s from serde_json::Value

§Example
use serde_json::{Value, from_str};
use serde_json_utils::{JsonUtils};

let mut x: Value = from_str(r###"[{"key1": "foo", "key2": "bar", "key3": [1, 1, 2]}, {"key1": "foo", "key2": "bar", "key3": [1, 1, 2]}]"###).unwrap();
let x_result: Value = from_str(r###"[{"key1": "foo", "key2": "bar", "key3": [1, 2]}]"###).unwrap();

x.dedup();
assert_eq!(x, x_result);
Source§

fn merge_similar(&mut self)

Implementors§