default-boxed 0.2.0

Helper trait to help create large struct on heap directly
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use default_boxed::DefaultBoxed;

#[derive(DefaultBoxed)]
struct Foo {
    b: ([u32; 1024 * 1024], [u32; 1024 * 1024]),
}

fn main() {
    let foo = Foo::default_boxed();
    assert_eq!(foo.b.0[128 * 1024], 0);
    assert_eq!(foo.b.1[256 * 1024], 0);
}