macro_rules! symmetric_difference_map_dyn {
($($val:expr),*) => { ... };
}Expand description
Computes the symmetric difference of zero or more SortedDisjointMap iterators,
creating a new SortedDisjointMap iterator.
The input iterators need not be of the same type.
For input iterators of the same type, symmetric_difference may be slightly faster.
§Performance
All work is done on demand, in one pass through the input iterators. Minimal memory is used.
§Examples
use range_set_blaze::prelude::*;
let a = RangeMapBlaze::from_iter([(1..=2, "a"), (5..=100, "a")]);
let b = CheckSortedDisjointMap::new([(2..=6, &"b")]);
let c = RangeMapBlaze::from_iter([(2..=2, "c"), (6..=200, "c")]);
let sym_diff = symmetric_difference_map_dyn!(a.range_values(), b, c.range_values());
assert_eq!(sym_diff.into_string(), r#"(1..=2, "a"), (3..=4, "b"), (6..=6, "a"), (101..=200, "c")"#);