From 69ceeae86d84144857175b8d16466530cd373fce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Chevalier?= Date: Wed, 11 May 2022 17:40:34 +0200 Subject: [PATCH] Remove global use of nextafter or work_share. --- src/algorithms/hilbert_curve.rs | 17 +++++++++-------- src/lib.rs | 3 --- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/algorithms/hilbert_curve.rs b/src/algorithms/hilbert_curve.rs index d684931a..68b9599d 100644 --- a/src/algorithms/hilbert_curve.rs +++ b/src/algorithms/hilbert_curve.rs @@ -14,6 +14,7 @@ use crate::geometry::OrientedBoundingBox; use crate::Point2D; use rayon::prelude::*; use std::fmt; +use crate::nextafter::nextafter; fn hilbert_curve_partition( partition: &mut [usize], @@ -91,7 +92,7 @@ fn segment_to_segment(min: f64, max: f64, order: usize) -> impl Fn(f64) -> u64 { // Map max to (2**order-1). while n <= width * f { - f = crate::nextafter(f, 0.0); + f = nextafter(f, 0.0); } move |v| { @@ -362,13 +363,13 @@ mod tests { assert_eq!(mapping(7.0), 6); assert_eq!(mapping(8.0), 7); - assert_eq!(mapping(crate::nextafter(1.0, f64::INFINITY)), 1); - assert_eq!(mapping(crate::nextafter(2.0, f64::INFINITY)), 2); - assert_eq!(mapping(crate::nextafter(3.0, f64::INFINITY)), 3); - assert_eq!(mapping(crate::nextafter(4.0, f64::INFINITY)), 4); - assert_eq!(mapping(crate::nextafter(5.0, f64::INFINITY)), 5); - assert_eq!(mapping(crate::nextafter(6.0, f64::INFINITY)), 6); - assert_eq!(mapping(crate::nextafter(7.0, f64::INFINITY)), 7); + assert_eq!(mapping(nextafter(1.0, f64::INFINITY)), 1); + assert_eq!(mapping(nextafter(2.0, f64::INFINITY)), 2); + assert_eq!(mapping(nextafter(3.0, f64::INFINITY)), 3); + assert_eq!(mapping(nextafter(4.0, f64::INFINITY)), 4); + assert_eq!(mapping(nextafter(5.0, f64::INFINITY)), 5); + assert_eq!(mapping(nextafter(6.0, f64::INFINITY)), 6); + assert_eq!(mapping(nextafter(7.0, f64::INFINITY)), 7); } #[test] diff --git a/src/lib.rs b/src/lib.rs index 7180810b..f19b899a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -97,9 +97,6 @@ pub use crate::algorithms::*; pub use crate::geometry::{BoundingBox, Point2D, Point3D, PointND}; pub use crate::real::Real; -// Internal use -use crate::nextafter::nextafter; -use crate::work_share::work_share; use std::cmp::Ordering; /// The `Partition` trait allows for partitioning data.