#heap-memory #aligned #heap #alignment #memory #box

aligned_box

Allocate heap memory with user-specified alignment

2 releases

0.2.1 Feb 27, 2021
0.2.0 Sep 1, 2020
0.1.0 Aug 23, 2020

#613 in Memory management

Download history 22/week @ 2023-12-06 27/week @ 2023-12-13 4/week @ 2024-01-24 11/week @ 2024-01-31 14/week @ 2024-02-07 34/week @ 2024-02-14 46/week @ 2024-02-21 51/week @ 2024-02-28 38/week @ 2024-03-06 35/week @ 2024-03-13 22/week @ 2024-03-20

150 downloads per month
Used in fips-md

MIT license

32KB
461 lines

aligned_box: Allocate aligned heap memory in Rust.

build license crates.io docs.rs

This crate provides a wrapper around std::boxed::Box which allows allocating heap memory with user-specified alignment.

Examples

Place value 17 of type i32 on the heap, aligned to 64 bytes:

use aligned_box::AlignedBox;
let b = AlignedBox::<i32>::new(64, 17);

Allocate memory for 1024 values of type f32 on the heap, aligned to 128 bytes. Values are initialized by their default value:

use aligned_box::AlignedBox;
let b = AlignedBox::<[f32]>::slice_from_default(128, 1024);

Allocate memory for 1024 values of type f32 on the heap, aligned to 128 bytes. All values are initialized with PI:

use aligned_box::AlignedBox;
let b = AlignedBox::<[f32]>::slice_from_value(128, 1024, std::f32::consts::PI);

No runtime deps