heap-array

Crates.ioheap-array
lib.rsheap-array
version0.1.9
sourcesrc
created_at2023-08-14 22:01:08.967564
updated_at2024-07-07 23:22:47.166405
descriptionAn Implementation of a variable length array, with its main benefit over `Vec` is taking up less space
homepage
repositoryhttps://github.com/NightMare-Vortex/heap-array
max_upload_size
id944519
size78,116
Vrtgs (NightMare-Vortex)

documentation

README

HeapArray

An Implementation of a variable length array, with its main benefit over Vec is taking up less space as HeapArray is represented as (pointer, len) while Vec is a (pointer, len, capacity) and is meant as a replacement for Box<[T]>

nice to have: compatible with serde

Example

use heap_array::{heap_array, HeapArray};

fn main() {
    let arr = heap_array![1, 2, 5, 8];

    assert_eq!(arr[0], 1);
    assert_eq!(arr[1], 2);
    assert_eq!(arr[2], 5);
    assert_eq!(arr[3], 8);
    assert_eq!(arr.len(), 4);

    let arr = HeapArray::from_fn(10, |i| i);
    assert_eq!(*arr, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
}
Commit count: 23

cargo fmt