init_with 0.1.1

Helper trait to initilize an array with a function



Have you wanted to be able to initialize a fixed array in Rust by calling a function to create each element? Now you can!

use init_with::InitWith;

let my_array = {
    let mut seed = Vec::new();
    let mut next_val = 0;

    <[Vec<u32>; 3]>::init_with(|| {
        next_val += 1;

assert_eq!(my_array, [vec![0], vec![0, 1], vec![0, 1, 2]]);

This crate lets you initialize the array elements in a functional manner while hiding the unsafe code that's needed to do so.

To import this crate, put the following into your Cargo.toml:

init_with = "0.1.1"

...and the following in your crate root:

extern crate init_with;