(target: &mut serde_json::Value, source: serde_json::Value)
| 732 | } |
| 733 | |
| 734 | fn merge_json_value(target: &mut serde_json::Value, source: serde_json::Value) { |
| 735 | match (target, source) { |
| 736 | (serde_json::Value::Object(target_map), serde_json::Value::Object(source_map)) => { |
| 737 | for (key, source_value) in source_map { |
| 738 | if let Some(target_value) = target_map.get_mut(&key) { |
| 739 | merge_json_value(target_value, source_value); |
| 740 | } else { |
| 741 | target_map.insert(key, source_value); |
| 742 | } |
| 743 | } |
| 744 | } |
| 745 | (target_value, source_value) => *target_value = source_value, |
| 746 | } |
| 747 | } |
| 748 | |
| 749 | fn merge_option_json_map( |
| 750 | target: &mut Option<HashMap<String, serde_json::Value>>, |
no test coverage detected