Skip to content

Commit cf23fcd

Browse files
authored
Updated rand and rand_distr, updated code samples (#726)
1 parent 5234849 commit cf23fcd

File tree

8 files changed

+29
-29
lines changed

8 files changed

+29
-29
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ explanation in the description.
299299
> use rand::distributions::{Normal, Distribution};
300300
>
301301
> fn main() {
302-
> let mut rng = rand::thread_rng();
302+
> let mut rng = rand::rng();
303303
> let normal = Normal::new(2.0, 3.0);
304304
> let v = normal.sample(&mut rng);
305305
> println!("{} is from a N(2, 9) distribution", v)

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ num_cpus = "1.16"
3636
percent-encoding = "2.3"
3737
petgraph = "0.6"
3838
postgres = "0.19"
39-
rand = "0.8"
40-
rand_distr = "0.4"
39+
rand = "0.9"
40+
rand_distr = "0.5.1"
4141
rayon = "1.10"
4242
regex = "1.11"
4343
reqwest = { version = "0.12", features = ["blocking", "json", "stream"] }

src/algorithms/randomness/rand-choose.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![rand-badge]][rand] [![cat-os-badge]][cat-os]
44

55
Randomly generates a string of given length ASCII characters with custom
6-
user-defined bytestring, with [`gen_range`].
6+
user-defined bytestring, with [`random_range`].
77

88
```rust,edition2018
99
fn main() {
@@ -12,11 +12,11 @@ fn main() {
1212
abcdefghijklmnopqrstuvwxyz\
1313
0123456789)(*&^%$#@!~";
1414
const PASSWORD_LEN: usize = 30;
15-
let mut rng = rand::thread_rng();
15+
let mut rng = rand::rng();
1616
1717
let password: String = (0..PASSWORD_LEN)
1818
.map(|_| {
19-
let idx = rng.gen_range(0..CHARSET.len());
19+
let idx = rng.random_range(0..CHARSET.len());
2020
CHARSET[idx] as char
2121
})
2222
.collect();
@@ -25,4 +25,4 @@ fn main() {
2525
}
2626
```
2727

28-
[`gen_range`]: https://docs.rs/rand/*/rand/trait.Rng.html#method.gen_range
28+
[`random_range`]: https://docs.rs/rand/*/rand/trait.Rng.html#method.random_range

src/algorithms/randomness/rand-custom.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ struct Point {
1717
1818
impl Distribution<Point> for Standard {
1919
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Point {
20-
let (rand_x, rand_y) = rng.gen();
20+
let (rand_x, rand_y) = rng.random();
2121
Point {
2222
x: rand_x,
2323
y: rand_y,
@@ -26,9 +26,9 @@ impl Distribution<Point> for Standard {
2626
}
2727
2828
fn main() {
29-
let mut rng = rand::thread_rng();
30-
let rand_tuple = rng.gen::<(i32, bool, f64)>();
31-
let rand_point: Point = rng.gen();
29+
let mut rng = rand::rng();
30+
let rand_tuple = rng.random::<(i32, bool, f64)>();
31+
let rand_point: Point = rng.random();
3232
println!("Random tuple: {:?}", rand_tuple);
3333
println!("Random Point: {:?}", rand_point);
3434
}

src/algorithms/randomness/rand-dist.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ An example using the [`Normal`] distribution is shown below.
1414

1515
```rust,edition2018,ignore
1616
use rand_distr::{Distribution, Normal, NormalError};
17-
use rand::thread_rng;
17+
use rand::rng;
1818
1919
fn main() -> Result<(), NormalError> {
20-
let mut rng = thread_rng();
20+
let mut rng = rng();
2121
let normal = Normal::new(2.0, 3.0)?;
2222
let v = normal.sample(&mut rng);
2323
println!("{} is from a N(2, 9) distribution", v);

src/algorithms/randomness/rand-passwd.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ Randomly generates a string of given length ASCII characters in the range `A-Z,
66
a-z, 0-9`, with [`Alphanumeric`] sample.
77

88
```rust,edition2018
9-
use rand::{thread_rng, Rng};
9+
use rand::{rng, Rng};
1010
use rand::distributions::Alphanumeric;
1111
1212
fn main() {
13-
let rand_string: String = thread_rng()
13+
let rand_string: String = rng()
1414
.sample_iter(&Alphanumeric)
1515
.take(30)
1616
.map(char::from)

src/algorithms/randomness/rand-range.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
[![rand-badge]][rand] [![cat-science-badge]][cat-science]
44

5-
Generates a random value within half-open `[0, 10)` range (not including `10`) with [`Rng::gen_range`].
5+
Generates a random value within half-open `[0, 10)` range (not including `10`) with [`Rng::random_range`].
66

77
```rust,edition2018
88
use rand::Rng;
99
1010
fn main() {
11-
let mut rng = rand::thread_rng();
12-
println!("Integer: {}", rng.gen_range(0..10));
13-
println!("Float: {}", rng.gen_range(0.0..10.0));
11+
let mut rng = rand::rng();
12+
println!("Integer: {}", rng.random_range(0..10));
13+
println!("Float: {}", rng.random_range(0.0..10.0));
1414
}
1515
```
1616

@@ -23,7 +23,7 @@ in the same range.
2323
use rand::distributions::{Distribution, Uniform};
2424
2525
fn main() {
26-
let mut rng = rand::thread_rng();
26+
let mut rng = rand::rng();
2727
let die = Uniform::from(1..7);
2828
2929
loop {
@@ -37,5 +37,5 @@ fn main() {
3737
```
3838

3939
[`Uniform`]: https://docs.rs/rand/*/rand/distributions/uniform/struct.Uniform.html
40-
[`Rng::gen_range`]: https://doc.rust-lang.org/rand/*/rand/trait.Rng.html#method.gen_range
40+
[`Rng::random_range`]: https://doc.rust-lang.org/rand/*/rand/trait.Rng.html#method.random_range
4141
[uniform distribution]: https://en.wikipedia.org/wiki/Uniform_distribution_(continuous)

src/algorithms/randomness/rand.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![rand-badge]][rand] [![cat-science-badge]][cat-science]
44

55
Generates random numbers with help of random-number
6-
generator [`rand::Rng`] obtained via [`rand::thread_rng`]. Each thread has an
6+
generator [`rand::Rng`] obtained via [`rand::rng`]. Each thread has an
77
initialized generator. Integers are uniformly distributed over the range of the
88
type, and floating point numbers are uniformly distributed from 0 up to but not
99
including 1.
@@ -12,17 +12,17 @@ including 1.
1212
use rand::Rng;
1313
1414
fn main() {
15-
let mut rng = rand::thread_rng();
15+
let mut rng = rand::rng();
1616
17-
let n1: u8 = rng.gen();
18-
let n2: u16 = rng.gen();
17+
let n1: u8 = rng.random();
18+
let n2: u16 = rng.random();
1919
println!("Random u8: {}", n1);
2020
println!("Random u16: {}", n2);
21-
println!("Random u32: {}", rng.gen::<u32>());
22-
println!("Random i32: {}", rng.gen::<i32>());
23-
println!("Random float: {}", rng.gen::<f64>());
21+
println!("Random u32: {}", rng.random::<u32>());
22+
println!("Random i32: {}", rng.random::<i32>());
23+
println!("Random float: {}", rng.random::<f64>());
2424
}
2525
```
2626

2727
[`rand::Rng`]: https://docs.rs/rand/*/rand/trait.Rng.html
28-
[`rand::thread_rng`]: https://docs.rs/rand/*/rand/fn.thread_rng.html
28+
[`rand::rng`]: https://docs.rs/rand/*/rand/fn.rng.html

0 commit comments

Comments
 (0)