pub fn merge_iters<'a, T: Ord + 'a, I: Iterator<Item = T>>(
iters: &mut [I],
) -> MergeIterator<'_, T, I, impl Fn(&T, &T) -> Ordering + 'a, impl Fn(&(usize, T), &(usize, T)) -> Ordering + 'a> ⓘExpand description
Iterates over the union of many sorted deduplicated iterators.
§Examples
use iter_set_ops::merge_iters;
let it1 = 1u8..=5;
let it2 = 3u8..=7;
let it3 = 2u8..=4;
let mut iters = [it1, it2, it3];
let res: Vec<_> = merge_iters(&mut iters).collect();
assert_eq!(res, vec![1, 2, 3, 4, 5, 6, 7]);