diff --git a/src/libcore/cmp.rs b/src/libcore/cmp.rs index 174ceb6b8a7e6..ec6525485f7a1 100644 --- a/src/libcore/cmp.rs +++ b/src/libcore/cmp.rs @@ -481,32 +481,6 @@ pub trait Ord: Eq + PartialOrd { where Self: Sized { if self <= other { self } else { other } } - - /// Returns max if self is greater than max, and min if self is less than min. - /// Otherwise this will return self. Panics if min > max. - /// - /// # Examples - /// - /// ``` - /// #![feature(clamp)] - /// - /// assert!((-3).clamp(-2, 1) == -2); - /// assert!(0.clamp(-2, 1) == 0); - /// assert!(2.clamp(-2, 1) == 1); - /// ``` - #[unstable(feature = "clamp", issue = "44095")] - fn clamp(self, min: Self, max: Self) -> Self - where Self: Sized { - assert!(min <= max); - if self < min { - min - } - else if self > max { - max - } else { - self - } - } } #[stable(feature = "rust1", since = "1.0.0")] diff --git a/src/libstd/f32.rs b/src/libstd/f32.rs index 18bc27faa8227..0135cd0a588cf 100644 --- a/src/libstd/f32.rs +++ b/src/libstd/f32.rs @@ -1080,26 +1080,6 @@ impl f32 { 0.5 * ((2.0 * self) / (1.0 - self)).ln_1p() } - /// Returns max if self is greater than max, and min if self is less than min. - /// Otherwise this returns self. Panics if min > max, min equals NaN, or max equals NaN. - /// - /// # Examples - /// - /// ``` - /// assert!((-3.0f32).clamp(-2.0f32, 1.0f32) == -2.0f32); - /// assert!((0.0f32).clamp(-2.0f32, 1.0f32) == 0.0f32); - /// assert!((2.0f32).clamp(-2.0f32, 1.0f32) == 1.0f32); - /// ``` - #[unstable(feature = "clamp", issue = "44095")] - #[inline] - pub fn clamp(self, min: f32, max: f32) -> f32 { - assert!(min <= max); - let mut x = self; - if x < min { x = min; } - if x > max { x = max; } - x - } - /// Raw transmutation to `u32`. /// /// Converts the `f32` into its raw memory representation, diff --git a/src/libstd/f64.rs b/src/libstd/f64.rs index b04ba9eabdbb3..d73d7cd2c7bd1 100644 --- a/src/libstd/f64.rs +++ b/src/libstd/f64.rs @@ -970,26 +970,6 @@ impl f64 { 0.5 * ((2.0 * self) / (1.0 - self)).ln_1p() } - /// Returns max if self is greater than max, and min if self is less than min. - /// Otherwise this returns self. Panics if min > max, min equals NaN, or max equals NaN. - /// - /// # Examples - /// - /// ``` - /// assert!((-3.0f64).clamp(-2.0f64, 1.0f64) == -2.0f64); - /// assert!((0.0f64).clamp(-2.0f64, 1.0f64) == 0.0f64); - /// assert!((2.0f64).clamp(-2.0f64, 1.0f64) == 1.0f64); - /// ``` - #[unstable(feature = "clamp", issue = "44095")] - #[inline] - pub fn clamp(self, min: f64, max: f64) -> f64 { - assert!(min <= max); - let mut x = self; - if x < min { x = min; } - if x > max { x = max; } - x - } - // Solaris/Illumos requires a wrapper around log, log2, and log10 functions // because of their non-standard behavior (e.g. log(-n) returns -Inf instead // of expected NaN).