aboutsummaryrefslogtreecommitdiff
path: root/lib/src
diff options
context:
space:
mode:
authorLizzy Fleckenstein <eliasfleckenstein@web.de>2023-02-06 16:51:30 +0100
committerLizzy Fleckenstein <eliasfleckenstein@web.de>2023-02-06 16:51:30 +0100
commitf9170c5eebaa5387871e9d4ce4e1c569e30fd569 (patch)
tree9a7f9ea77a18adc412da1d5411bf5107f1fc8cf3 /lib/src
parent7c9e6049e5ee5ded700517db770735569fc0fc4e (diff)
downloadgenerate-random-f9170c5eebaa5387871e9d4ce4e1c569e30fd569.tar.xz
Support Vec
Diffstat (limited to 'lib/src')
-rw-r--r--lib/src/lib.rs7
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, )* )