Skip to main content

polars_utils/itertools/
iters_eq.rs

1/// Returns true if both iterators have the same length, and the items at each
2/// index are equal.
3pub fn iters_eq<L, R, T, U>(left: L, right: R) -> bool
4where
5    L: IntoIterator<Item = T>,
6    R: IntoIterator<Item = U>,
7    T: PartialEq<U>,
8    L::IntoIter: ExactSizeIterator,
9    R::IntoIter: ExactSizeIterator,
10{
11    let left = left.into_iter();
12    let right = right.into_iter();
13    left.len() == right.len() && left.zip(right).all(|(l, r)| l == r)
14}