From b4d6ae5bb8959affdb91a6b6791e725f97787344 Mon Sep 17 00:00:00 2001 From: OGINO Masanori Date: Thu, 8 Aug 2013 10:03:34 +0900 Subject: Remove redundant Ord method impls. Basically, generic containers should not use the default methods since a type of elements may not guarantees total order. str could use them since u8's Ord guarantees total order. Floating point numbers are also broken with the default methods because of NaN. Thanks for @thestinger. Timespec also guarantees total order AIUI. I'm unsure whether extra::semver::Identifier does so I left it alone. Proof needed. Signed-off-by: OGINO Masanori --- src/libstd/num/int_macros.rs | 6 ------ src/libstd/num/uint_macros.rs | 6 ------ 2 files changed, 12 deletions(-) (limited to 'src/libstd/num') diff --git a/src/libstd/num/int_macros.rs b/src/libstd/num/int_macros.rs index b692bedebfd..41da9a6ccbe 100644 --- a/src/libstd/num/int_macros.rs +++ b/src/libstd/num/int_macros.rs @@ -130,12 +130,6 @@ impl Num for $T {} impl Ord for $T { #[inline] fn lt(&self, other: &$T) -> bool { return (*self) < (*other); } - #[inline] - fn le(&self, other: &$T) -> bool { return (*self) <= (*other); } - #[inline] - fn ge(&self, other: &$T) -> bool { return (*self) >= (*other); } - #[inline] - fn gt(&self, other: &$T) -> bool { return (*self) > (*other); } } #[cfg(not(test))] diff --git a/src/libstd/num/uint_macros.rs b/src/libstd/num/uint_macros.rs index 29b8f29d87d..86b5b4ddfc0 100644 --- a/src/libstd/num/uint_macros.rs +++ b/src/libstd/num/uint_macros.rs @@ -131,12 +131,6 @@ impl Num for $T {} impl Ord for $T { #[inline] fn lt(&self, other: &$T) -> bool { (*self) < (*other) } - #[inline] - fn le(&self, other: &$T) -> bool { (*self) <= (*other) } - #[inline] - fn ge(&self, other: &$T) -> bool { (*self) >= (*other) } - #[inline] - fn gt(&self, other: &$T) -> bool { (*self) > (*other) } } #[cfg(not(test))] -- cgit 1.4.1-3-g733a5