Skip to content

Commit 6f96e4c

Browse files
committed
Fix the build with disabled.
1 parent 69177df commit 6f96e4c

File tree

2 files changed

+37
-2
lines changed

2 files changed

+37
-2
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "ordered-float"
3-
version = "2.1.0"
3+
version = "2.1.1"
44
authors = ["Jonathan Reem <jonathan.reem@gmail.com>", "Matt Brubeck <mbrubeck@limpet.net>"]
55
license = "MIT"
66
description = "Wrappers for total ordering on floats"

src/lib.rs

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ extern crate num_traits;
1010

1111
use core::cmp::Ordering;
1212
use core::convert::TryFrom;
13+
use core::num::FpCategory;
1314
use core::ops::{Add, AddAssign, Deref, DerefMut, Div, DivAssign, Mul, MulAssign, Neg, Rem,
1415
RemAssign, Sub, SubAssign};
1516
use core::hash::{Hash, Hasher};
@@ -334,6 +335,37 @@ impl<T: ToPrimitive> ToPrimitive for OrderedFloat<T> {
334335
fn to_f64(&self) -> Option<f64> { self.0.to_f64() }
335336
}
336337

338+
impl<T: Float> num_traits::float::FloatCore for OrderedFloat<T> {
339+
fn nan() -> Self { OrderedFloat(T::nan()) }
340+
fn infinity() -> Self { OrderedFloat(T::infinity()) }
341+
fn neg_infinity() -> Self { OrderedFloat(T::neg_infinity()) }
342+
fn neg_zero() -> Self { OrderedFloat(T::neg_zero()) }
343+
fn min_value() -> Self { OrderedFloat(T::min_value()) }
344+
fn min_positive_value() -> Self { OrderedFloat(T::min_positive_value()) }
345+
fn max_value() -> Self { OrderedFloat(T::max_value()) }
346+
fn is_nan(self) -> bool { self.0.is_nan() }
347+
fn is_infinite(self) -> bool { self.0.is_infinite() }
348+
fn is_finite(self) -> bool { self.0.is_finite() }
349+
fn is_normal(self) -> bool { self.0.is_normal() }
350+
fn classify(self) -> FpCategory { self.0.classify() }
351+
fn floor(self) -> Self { OrderedFloat(self.0.floor()) }
352+
fn ceil(self) -> Self { OrderedFloat(self.0.ceil()) }
353+
fn round(self) -> Self { OrderedFloat(self.0.round()) }
354+
fn trunc(self) -> Self { OrderedFloat(self.0.trunc()) }
355+
fn fract(self) -> Self { OrderedFloat(self.0.fract()) }
356+
fn abs(self) -> Self { OrderedFloat(self.0.abs()) }
357+
fn signum(self) -> Self { OrderedFloat(self.0.signum()) }
358+
fn is_sign_positive(self) -> bool { self.0.is_sign_positive() }
359+
fn is_sign_negative(self) -> bool { self.0.is_sign_negative() }
360+
fn recip(self) -> Self { OrderedFloat(self.0.recip()) }
361+
fn powi(self, n: i32) -> Self { OrderedFloat(self.0.powi(n)) }
362+
fn integer_decode(self) -> (u64, i16, i8) { self.0.integer_decode() }
363+
fn epsilon() -> Self { OrderedFloat(T::epsilon()) }
364+
fn to_degrees(self) -> Self { OrderedFloat(self.0.to_degrees()) }
365+
fn to_radians(self) -> Self { OrderedFloat(self.0.to_radians()) }
366+
}
367+
368+
#[cfg(feature = "std")]
337369
impl<T: Float> Float for OrderedFloat<T> {
338370
fn nan() -> Self { OrderedFloat(T::nan()) }
339371
fn infinity() -> Self { OrderedFloat(T::infinity()) }
@@ -346,7 +378,7 @@ impl<T: Float> Float for OrderedFloat<T> {
346378
fn is_infinite(self) -> bool { self.0.is_infinite() }
347379
fn is_finite(self) -> bool { self.0.is_finite() }
348380
fn is_normal(self) -> bool { self.0.is_normal() }
349-
fn classify(self) -> std::num::FpCategory { self.0.classify() }
381+
fn classify(self) -> FpCategory { self.0.classify() }
350382
fn floor(self) -> Self { OrderedFloat(self.0.floor()) }
351383
fn ceil(self) -> Self { OrderedFloat(self.0.ceil()) }
352384
fn round(self) -> Self { OrderedFloat(self.0.round()) }
@@ -392,6 +424,9 @@ impl<T: Float> Float for OrderedFloat<T> {
392424
fn acosh(self) -> Self { OrderedFloat(self.0.acosh()) }
393425
fn atanh(self) -> Self { OrderedFloat(self.0.atanh()) }
394426
fn integer_decode(self) -> (u64, i16, i8) { self.0.integer_decode() }
427+
fn epsilon() -> Self { OrderedFloat(T::epsilon()) }
428+
fn to_degrees(self) -> Self { OrderedFloat(self.0.to_degrees()) }
429+
fn to_radians(self) -> Self { OrderedFloat(self.0.to_radians()) }
395430
}
396431

397432

0 commit comments

Comments
 (0)