[−][src]Function iter_set::union_by_key
pub fn union_by_key<T, L, R, K, F>(
a: L,
b: R,
key: F
) -> impl Iterator<Item = T> where
L: IntoIterator<Item = T>,
R: IntoIterator<Item = T>,
K: Ord,
F: FnMut(&T) -> K,
Take the union of two sets represented by sorted, deduplicated iterators, using a key extraction function.
See union()
.
Examples
use iter_set::union_by_key; let a = [(1, "a"), (2, "a")]; let b = [(2, "b"), (3, "b")]; assert!(union_by_key(&a, &b, |&(key, _)| key).eq(&[(1, "a"), (2, "a"), (3, "b")]));