Skip to content

Commit 6cfe768

Browse files
committed
Address comments
1 parent 23c6602 commit 6cfe768

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/lib.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -571,6 +571,8 @@ macro_rules! arbitrary_tuple {
571571
}
572572
arbitrary_tuple!(A B C D E F G H I J K L M N O P Q R S T U V W X Y Z);
573573

574+
// Helper to safely create arrays since the standard library doesn't
575+
// provide one yet. Shouldn't be necessary in the future.
574576
struct ArrayGuard<T, const N: usize> {
575577
dst: *mut T,
576578
initialized: usize,
@@ -591,10 +593,9 @@ where
591593
F: FnMut(usize) -> T,
592594
{
593595
let mut array: mem::MaybeUninit<[T; N]> = mem::MaybeUninit::uninit();
594-
let mut guard: ArrayGuard<T, N> = ArrayGuard {
595-
dst: array.as_mut_ptr() as _,
596-
initialized: 0,
597-
};
596+
let array_ptr = array.as_mut_ptr();
597+
let dst = array_ptr as _;
598+
let mut guard: ArrayGuard<T, N> = ArrayGuard { dst, initialized: 0 };
598599
unsafe {
599600
for (idx, value_ptr) in (&mut *array.as_mut_ptr()).iter_mut().enumerate() {
600601
core::ptr::write(value_ptr, cb(idx));
@@ -610,10 +611,9 @@ where
610611
F: FnMut(usize) -> Result<T>,
611612
{
612613
let mut array: mem::MaybeUninit<[T; N]> = mem::MaybeUninit::uninit();
613-
let mut guard: ArrayGuard<T, N> = ArrayGuard {
614-
dst: array.as_mut_ptr() as _,
615-
initialized: 0,
616-
};
614+
let array_ptr = array.as_mut_ptr();
615+
let dst = array_ptr as _;
616+
let mut guard: ArrayGuard<T, N> = ArrayGuard { dst, initialized: 0 };
617617
unsafe {
618618
for (idx, value_ptr) in (&mut *array.as_mut_ptr()).iter_mut().enumerate() {
619619
core::ptr::write(value_ptr, cb(idx)?);

0 commit comments

Comments
 (0)