diff options
Diffstat (limited to 'lib/src/lib.rs')
-rw-r--r-- | lib/src/lib.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/src/lib.rs b/lib/src/lib.rs index 67432e3..3b555f2 100644 --- a/lib/src/lib.rs +++ b/lib/src/lib.rs @@ -108,6 +108,13 @@ impl GenerateRandom for String { } } +impl<T: GenerateRandom> GenerateRandom for Vec<T> { + fn generate_random<R: rand::Rng + ?Sized>(rng: &mut R) -> Self { + let len = rng.gen_range(0..8); + (0..len).map(|_| T::generate_random(rng)).collect() + } +} + macro_rules! impl_generate_random_tuple { ( $t0:ident $( $t:ident )* ) => { impl< $t0, $( $t, )* > GenerateRandom for ( $t0, $( $t, )* ) |