Skip to content

Commit 966f278

Browse files
committed
Deprecate Rng::gen_iter
1 parent 7b70da2 commit 966f278

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

benches/misc.rs

+1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ fn gen_1k_iter_repeat(b: &mut Bencher) {
7272
b.bytes = 1024;
7373
}
7474

75+
#[allow(deprecated)]
7576
#[bench]
7677
fn gen_1k_gen_iter(b: &mut Bencher) {
7778
let mut rng = weak_rng();

src/lib.rs

+8-3
Original file line numberDiff line numberDiff line change
@@ -602,6 +602,8 @@ pub trait Rng: RngCore + Sized {
602602
/// println!("{:?}", rng.gen_iter::<(f64, bool)>().take(5)
603603
/// .collect::<Vec<(f64, bool)>>());
604604
/// ```
605+
#[allow(deprecated)]
606+
#[deprecated(since="0.5.0", note="replaced by Rng::iter")]
605607
fn gen_iter<T>(&mut self) -> Generator<T, &mut Self> where Uniform: Distribution<T> {
606608
Generator { rng: self, _marker: marker::PhantomData }
607609
}
@@ -891,11 +893,14 @@ impl_as_byte_slice_arrays!(32, N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
891893
/// [`gen_iter`]: trait.Rng.html#method.gen_iter
892894
/// [`Rng`]: trait.Rng.html
893895
#[derive(Debug)]
896+
#[allow(deprecated)]
897+
#[deprecated(since="0.5.0", note="replaced by Rng::iter")]
894898
pub struct Generator<T, R: RngCore> {
895899
rng: R,
896900
_marker: marker::PhantomData<fn() -> T>,
897901
}
898902

903+
#[allow(deprecated)]
899904
impl<T, R: RngCore> Iterator for Generator<T, R> where Uniform: Distribution<T> {
900905
type Item = T;
901906

@@ -1252,9 +1257,9 @@ mod test {
12521257
#[test]
12531258
fn test_gen_vec() {
12541259
let mut r = rng(106);
1255-
assert_eq!(r.gen_iter::<u8>().take(0).count(), 0);
1256-
assert_eq!(r.gen_iter::<u8>().take(10).count(), 10);
1257-
assert_eq!(r.gen_iter::<f64>().take(16).count(), 16);
1260+
assert_eq!(r.iter().map(|rng| rng.gen::<u8>()).take(0).count(), 0);
1261+
assert_eq!(r.iter().map(|rng| rng.gen::<u8>()).take(10).count(), 10);
1262+
assert_eq!(r.iter().map(|rng| rng.gen::<f64>()).take(16).count(), 16);
12581263
}
12591264

12601265
#[test]

0 commit comments

Comments
 (0)