1
Fork 0

Simplify by calling SliceOrd::compare

This commit is contained in:
Stjepan Glavina 2017-02-08 16:01:32 +01:00
parent 3bd6e46687
commit ececbb2687

View file

@ -2294,21 +2294,7 @@ impl<A> SlicePartialOrd<A> for [A]
where A: Ord
{
default fn partial_compare(&self, other: &[A]) -> Option<Ordering> {
let l = cmp::min(self.len(), other.len());
// Slice to the loop iteration range to enable bound check
// elimination in the compiler
let lhs = &self[..l];
let rhs = &other[..l];
for i in 0..l {
match lhs[i].cmp(&rhs[i]) {
Ordering::Equal => (),
non_eq => return Some(non_eq),
}
}
self.len().partial_cmp(&other.len())
Some(SliceOrd::compare(self, other))
}
}