pub fn pin_init_array_from_fn<I, const N: usize, T, E>(
make_init: impl FnMut(usize) -> I,
) -> impl PinInit<[T; N], E>where
I: PinInit<T, E>,
Expand description
Initializes an array by initializing each element via the provided initializer.
ยงExamples
use pin_init::pin_init_array_from_fn;
use std::sync::Arc;
let array: Pin<Arc<[CMutex<usize>; 1_000]>> =
Arc::pin_init(pin_init_array_from_fn(|i| CMutex::new(i))).unwrap();
assert_eq!(array.len(), 1_000);