@@ -69,13 +69,12 @@ impl Gen {
69
69
self . rng . gen ( )
70
70
}
71
71
72
- fn gen_range < T , B1 , B2 > ( & mut self , low : B1 , high : B2 ) -> T
72
+ fn gen_range < T , R > ( & mut self , range : R ) -> T
73
73
where
74
74
T : rand:: distributions:: uniform:: SampleUniform ,
75
- B1 : rand:: distributions:: uniform:: SampleBorrow < T > + Sized ,
76
- B2 : rand:: distributions:: uniform:: SampleBorrow < T > + Sized ,
75
+ R : rand:: distributions:: uniform:: SampleRange < T > ,
77
76
{
78
- self . rng . gen_range ( low , high )
77
+ self . rng . gen_range ( range )
79
78
}
80
79
}
81
80
@@ -253,7 +252,7 @@ impl<A: Arbitrary> Arbitrary for Vec<A> {
253
252
fn arbitrary ( g : & mut Gen ) -> Vec < A > {
254
253
let size = {
255
254
let s = g. size ( ) ;
256
- g. gen_range ( 0 , s)
255
+ g. gen_range ( 0 .. s)
257
256
} ;
258
257
( 0 ..size) . map ( |_| A :: arbitrary ( g) ) . collect ( )
259
258
}
@@ -576,7 +575,7 @@ impl Arbitrary for String {
576
575
fn arbitrary ( g : & mut Gen ) -> String {
577
576
let size = {
578
577
let s = g. size ( ) ;
579
- g. gen_range ( 0 , s)
578
+ g. gen_range ( 0 .. s)
580
579
} ;
581
580
( 0 ..size) . map ( |_| char:: arbitrary ( g) ) . collect ( )
582
581
}
@@ -592,7 +591,7 @@ impl Arbitrary for CString {
592
591
fn arbitrary ( g : & mut Gen ) -> Self {
593
592
let size = {
594
593
let s = g. size ( ) ;
595
- g. gen_range ( 0 , s)
594
+ g. gen_range ( 0 .. s)
596
595
} ;
597
596
// Use either random bytes or random UTF-8 encoded codepoints.
598
597
let utf8: bool = g. gen ( ) ;
@@ -630,16 +629,16 @@ impl Arbitrary for CString {
630
629
631
630
impl Arbitrary for char {
632
631
fn arbitrary ( g : & mut Gen ) -> char {
633
- let mode = g. gen_range ( 0 , 100 ) ;
632
+ let mode = g. gen_range ( 0 .. 100 ) ;
634
633
match mode {
635
634
0 ..=49 => {
636
635
// ASCII + some control characters
637
- g. gen_range ( 0 , 0xB0 ) as u8 as char
636
+ g. gen_range ( 0 .. 0xB0 ) as u8 as char
638
637
}
639
638
50 ..=59 => {
640
639
// Unicode BMP characters
641
640
loop {
642
- if let Some ( x) = char:: from_u32 ( g. gen_range ( 0 , 0x10000 ) ) {
641
+ if let Some ( x) = char:: from_u32 ( g. gen_range ( 0 .. 0x10000 ) ) {
643
642
return x;
644
643
}
645
644
// ignore surrogate pairs
@@ -715,7 +714,7 @@ impl Arbitrary for char {
715
714
}
716
715
90 ..=94 => {
717
716
// Tricky unicode, part 2
718
- char:: from_u32 ( g. gen_range ( 0x2000 , 0x2070 ) ) . unwrap ( )
717
+ char:: from_u32 ( g. gen_range ( 0x2000 .. 0x2070 ) ) . unwrap ( )
719
718
}
720
719
95 ..=99 => {
721
720
// Completely arbitrary characters
@@ -779,7 +778,7 @@ macro_rules! unsigned_arbitrary {
779
778
$(
780
779
impl Arbitrary for $ty {
781
780
fn arbitrary( g: & mut Gen ) -> $ty {
782
- match g. gen_range( 0 , 10 ) {
781
+ match g. gen_range( 0 .. 10 ) {
783
782
0 => {
784
783
* g. choose( unsigned_problem_values!( $ty) ) . unwrap( )
785
784
} ,
@@ -849,7 +848,7 @@ macro_rules! signed_arbitrary {
849
848
$(
850
849
impl Arbitrary for $ty {
851
850
fn arbitrary( g: & mut Gen ) -> $ty {
852
- match g. gen_range( 0 , 10 ) {
851
+ match g. gen_range( 0 .. 10 ) {
853
852
0 => {
854
853
* g. choose( signed_problem_values!( $ty) ) . unwrap( )
855
854
} ,
@@ -881,12 +880,12 @@ macro_rules! float_arbitrary {
881
880
( $( $t: ty, $path: path, $shrinkable: ty) ,+) => { $(
882
881
impl Arbitrary for $t {
883
882
fn arbitrary( g: & mut Gen ) -> $t {
884
- match g. gen_range( 0 , 10 ) {
883
+ match g. gen_range( 0 .. 10 ) {
885
884
0 => * g. choose( float_problem_values!( $path) ) . unwrap( ) ,
886
885
_ => {
887
886
use $path as p;
888
- let exp = g. gen_range( 0. , p:: MAX_EXP as i16 as $t) ;
889
- let mantissa = g. gen_range( 1. , 2. ) ;
887
+ let exp = g. gen_range( ( 0. ) .. p:: MAX_EXP as i16 as $t) ;
888
+ let mantissa = g. gen_range( ( 1. ) .. 2. ) ;
890
889
let sign = * g. choose( & [ -1. , 1. ] ) . unwrap( ) ;
891
890
sign * mantissa * exp. exp2( )
892
891
}
@@ -987,7 +986,7 @@ impl<T: Arbitrary> Arbitrary for Wrapping<T> {
987
986
988
987
impl < T : Arbitrary > Arbitrary for Bound < T > {
989
988
fn arbitrary ( g : & mut Gen ) -> Bound < T > {
990
- match g. gen_range ( 0 , 3 ) {
989
+ match g. gen_range ( 0 .. 3 ) {
991
990
0 => Bound :: Included ( T :: arbitrary ( g) ) ,
992
991
1 => Bound :: Excluded ( T :: arbitrary ( g) ) ,
993
992
_ => Bound :: Unbounded ,
@@ -1065,8 +1064,8 @@ impl Arbitrary for RangeFull {
1065
1064
1066
1065
impl Arbitrary for Duration {
1067
1066
fn arbitrary ( gen : & mut Gen ) -> Self {
1068
- let seconds = gen. gen_range ( 0 , gen. size ( ) as u64 ) ;
1069
- let nanoseconds = gen. gen_range ( 0 , 1_000_000 ) ;
1067
+ let seconds = gen. gen_range ( 0 .. gen. size ( ) as u64 ) ;
1068
+ let nanoseconds = gen. gen_range ( 0 .. 1_000_000 ) ;
1070
1069
Duration :: new ( seconds, nanoseconds)
1071
1070
}
1072
1071
0 commit comments