From 6cc5a3d9cc470e2db2b2a45fcddb2350ac0b039e Mon Sep 17 00:00:00 2001 From: Tim Vermeulen Date: Tue, 12 Mar 2019 20:24:10 +0100 Subject: Forward `max` and `min` to `max_by` and `min_by` respectively --- src/libcore/iter/traits/iterator.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/libcore') diff --git a/src/libcore/iter/traits/iterator.rs b/src/libcore/iter/traits/iterator.rs index 980de229fa6..ca7feed0712 100644 --- a/src/libcore/iter/traits/iterator.rs +++ b/src/libcore/iter/traits/iterator.rs @@ -2008,8 +2008,7 @@ pub trait Iterator { #[stable(feature = "rust1", since = "1.0.0")] fn max(self) -> Option where Self: Sized, Self::Item: Ord { - // switch to y even if it is only equal, to preserve stability. - select_fold1(self, |x, y| x <= y) + self.max_by(Ord::cmp) } /// Returns the minimum element of an iterator. @@ -2034,8 +2033,7 @@ pub trait Iterator { #[stable(feature = "rust1", since = "1.0.0")] fn min(self) -> Option where Self: Sized, Self::Item: Ord { - // only switch to y if it is strictly smaller, to preserve stability. - select_fold1(self, |x, y| x > y) + self.min_by(Ord::cmp) } /// Returns the element that gives the maximum value from the -- cgit 1.4.1-3-g733a5