Macro serde_json_lodash::merge[][src]

macro_rules! merge {
    () => { ... };
    ($a:expr $(,)*) => { ... };
    ($a:expr, $b:expr $(,)*) => { ... };
    ($a:expr, $b:expr, $($rest:tt)*) => { ... };
}

Description can be found in lodash merge

Examples:

#[macro_use] extern crate serde_json_lodash;
use serde_json::json;

let object = json!({
  "a": [{ "b": 2 }, { "d": 4 }]
});

let other = json!({
  "a": [{ "c": 3 }, { "e": 5 }]
});

assert_eq!(
  merge!(object, other),
  json!({ 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] })
);

More examples:

assert_eq!(merge!(), json!({}));
assert_eq!(
  merge!(json!({'a':1}), json!({'b':2}), json!({'c':3})),
  json!({'a': 1, 'b': 2, 'c': 3})
);