bitvek

Crates.iobitvek
lib.rsbitvek
version0.3.0
sourcesrc
created_at2024-07-02 23:29:16.856039
updated_at2024-11-17 22:34:37.469079
descriptionA simple bit vector implementation.
homepage
repositoryhttps://github.com/Lingxuan-Ye/bitvek
max_upload_size
id1290018
size29,079
Lingxuan Ye (Lingxuan-Ye)

documentation

README

bitvek

Crates.io Documentation License: MIT

Say, we have a bit vector —

it's nothing better than a Vec<bool>, but …

what if we implement it,

and save some poor bits of memory?

Quick Start

use bitvek::bitvec;

let vec = bitvec![
    true, true, true, true, false, false, false, false,
    false, false, false, false, true, true, true, true,
];

Find it cumbersome? Try this:

// requires the total number of bits to be a multiple of 8
let vec = bitvec![0b11110000, 0b00001111];

Memory Efficiency

To achieve memory savings, the total number of bits stored must exceed twice the machine word the size in bytes, corresponding to 8 for 32-bit systems and 16 for 64-bit systems.

Commit count: 64

cargo fmt