Skip to content

Commit 852988b

Browse files
authored
Merge pull request #776 from vks/deprecate-new
Remove `{UnitSphereSurface, UnitCircle}::new`
2 parents adbfa38 + 10474c9 commit 852988b

File tree

3 files changed

+12
-34
lines changed

3 files changed

+12
-34
lines changed

benches/distributions.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,8 @@ distr_int!(distr_binomial, u64, Binomial::new(20, 0.7));
207207
distr_int!(distr_binomial_small, u64, Binomial::new(1000000, 1e-30));
208208
distr_int!(distr_poisson, u64, Poisson::new(4.0));
209209
distr!(distr_bernoulli, bool, Bernoulli::new(0.18));
210-
distr_arr!(distr_circle, [f64; 2], UnitCircle::new());
211-
distr_arr!(distr_sphere_surface, [f64; 3], UnitSphereSurface::new());
210+
distr_arr!(distr_circle, [f64; 2], UnitCircle);
211+
distr_arr!(distr_sphere_surface, [f64; 3], UnitSphereSurface);
212212

213213
// Weighted
214214
distr_int!(distr_weighted_i8, usize, WeightedIndex::new(&[1i8, 2, 3, 4, 12, 0, 2, 1]).unwrap());

rand_distr/src/unit_circle.rs

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ use crate::{Distribution, Uniform};
1919
/// ```
2020
/// use rand_distr::{UnitCircle, Distribution};
2121
///
22-
/// let circle = UnitCircle::new();
23-
/// let v = circle.sample(&mut rand::thread_rng());
22+
/// let v = UnitCircle.sample(&mut rand::thread_rng());
2423
/// println!("{:?} is from the unit circle.", v)
2524
/// ```
2625
///
@@ -31,14 +30,6 @@ use crate::{Distribution, Uniform};
3130
#[derive(Clone, Copy, Debug)]
3231
pub struct UnitCircle;
3332

34-
impl UnitCircle {
35-
/// Construct a new `UnitCircle` distribution.
36-
#[inline]
37-
pub fn new() -> UnitCircle {
38-
UnitCircle
39-
}
40-
}
41-
4233
impl Distribution<[f64; 2]> for UnitCircle {
4334
#[inline]
4435
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> [f64; 2] {
@@ -83,19 +74,17 @@ mod tests {
8374
#[test]
8475
fn norm() {
8576
let mut rng = crate::test::rng(1);
86-
let dist = UnitCircle::new();
8777
for _ in 0..1000 {
88-
let x = dist.sample(&mut rng);
78+
let x = UnitCircle.sample(&mut rng);
8979
assert_almost_eq!(x[0]*x[0] + x[1]*x[1], 1., 1e-15);
9080
}
9181
}
9282

9383
#[test]
9484
fn value_stability() {
9585
let mut rng = crate::test::rng(2);
96-
let dist = UnitCircle::new();
97-
assert_eq!(dist.sample(&mut rng), [-0.8032118336637037, 0.5956935036263119]);
98-
assert_eq!(dist.sample(&mut rng), [-0.4742919588505423, -0.880367615130018]);
99-
assert_eq!(dist.sample(&mut rng), [0.9297328981467168, 0.368234623716601]);
86+
assert_eq!(UnitCircle.sample(&mut rng), [-0.8032118336637037, 0.5956935036263119]);
87+
assert_eq!(UnitCircle.sample(&mut rng), [-0.4742919588505423, -0.880367615130018]);
88+
assert_eq!(UnitCircle.sample(&mut rng), [0.9297328981467168, 0.368234623716601]);
10089
}
10190
}

rand_distr/src/unit_sphere.rs

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ use crate::{Distribution, Uniform};
1919
/// ```
2020
/// use rand_distr::{UnitSphereSurface, Distribution};
2121
///
22-
/// let sphere = UnitSphereSurface::new();
23-
/// let v = sphere.sample(&mut rand::thread_rng());
22+
/// let v = UnitSphereSurface.sample(&mut rand::thread_rng());
2423
/// println!("{:?} is from the unit sphere surface.", v)
2524
/// ```
2625
///
@@ -30,14 +29,6 @@ use crate::{Distribution, Uniform};
3029
#[derive(Clone, Copy, Debug)]
3130
pub struct UnitSphereSurface;
3231

33-
impl UnitSphereSurface {
34-
/// Construct a new `UnitSphereSurface` distribution.
35-
#[inline]
36-
pub fn new() -> UnitSphereSurface {
37-
UnitSphereSurface
38-
}
39-
}
40-
4132
impl Distribution<[f64; 3]> for UnitSphereSurface {
4233
#[inline]
4334
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> [f64; 3] {
@@ -78,22 +69,20 @@ mod tests {
7869
#[test]
7970
fn norm() {
8071
let mut rng = crate::test::rng(1);
81-
let dist = UnitSphereSurface::new();
8272
for _ in 0..1000 {
83-
let x = dist.sample(&mut rng);
73+
let x = UnitSphereSurface.sample(&mut rng);
8474
assert_almost_eq!(x[0]*x[0] + x[1]*x[1] + x[2]*x[2], 1., 1e-15);
8575
}
8676
}
8777

8878
#[test]
8979
fn value_stability() {
9080
let mut rng = crate::test::rng(2);
91-
let dist = UnitSphereSurface::new();
92-
assert_eq!(dist.sample(&mut rng),
81+
assert_eq!(UnitSphereSurface.sample(&mut rng),
9382
[-0.24950027180862533, -0.7552572587896719, 0.6060825747478084]);
94-
assert_eq!(dist.sample(&mut rng),
83+
assert_eq!(UnitSphereSurface.sample(&mut rng),
9584
[0.47604534507233487, -0.797200864987207, -0.3712837328763685]);
96-
assert_eq!(dist.sample(&mut rng),
85+
assert_eq!(UnitSphereSurface.sample(&mut rng),
9786
[0.9795722330927367, 0.18692349236651176, 0.07414747571708524]);
9887
}
9988
}

0 commit comments

Comments
 (0)