From 2a6f3ebd7b63817edc45a20c333028dc855de6da Mon Sep 17 00:00:00 2001 From: Lizzy Fleckenstein Date: Tue, 7 Feb 2023 23:01:02 +0100 Subject: Use core::array::from_fn for arrays --- lib/src/lib.rs | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) (limited to 'lib/src') diff --git a/lib/src/lib.rs b/lib/src/lib.rs index 75acd57..c7e9285 100644 --- a/lib/src/lib.rs +++ b/lib/src/lib.rs @@ -84,18 +84,7 @@ impl GenerateRandom for Option { impl GenerateRandom for [T; N] { fn generate_random(rng: &mut R) -> Self { - use core::mem::MaybeUninit; - - let mut arr: [MaybeUninit; N] = unsafe { MaybeUninit::uninit().assume_init() }; - - for elem in arr.iter_mut() { - *elem = MaybeUninit::new(T::generate_random(rng)); - } - - let ret = unsafe { std::mem::transmute_copy(&arr) }; - std::mem::forget(arr); - - ret + core::array::from_fn(|_| T::generate_random(rng)) } } -- cgit v1.2.3