use crate::natural::Natural;
use crate::natural_vector::NaturalVector;
use malachite_base::num::basic::unsigneds::PrimitiveUnsigned;
use malachite_base::unsigned_vector::UnsignedVector;
impl<T: PrimitiveUnsigned> PartialEq<UnsignedVector<T>> for NaturalVector
where
Natural: PartialEq<T>,
{
fn eq(&self, other: &UnsignedVector<T>) -> bool {
self.elements.len() == other.elements.len()
&& self
.elements
.iter()
.zip(&other.elements)
.all(|(x, y)| x == y)
}
}
impl<T: PrimitiveUnsigned> PartialEq<NaturalVector> for UnsignedVector<T>
where
Natural: PartialEq<T>,
{
#[inline]
fn eq(&self, other: &NaturalVector) -> bool {
other == self
}
}