Crates.io | depacked |
lib.rs | depacked |
version | 0.2.3 |
source | src |
created_at | 2022-04-08 22:16:09.663828 |
updated_at | 2022-04-19 18:22:17.66317 |
description | Minimalistic Rust Crate for handling memory packed data to aid CPU caching. |
homepage | |
repository | https://github.com/DigitalExtinction/DePacked |
max_upload_size | |
id | 564450 |
size | 26,147 |
use depacked::PackedData;
struct NeedToPack(u32);
fn main() {
let mut packed = PackedData::with_max_capacity(1000);
// Insertin is fast but not as CPU cache friendly.
let first_item = packed.insert(NeedToPack(0));
let second_item = packed.insert(NeedToPack(1));
// Getting (mutable) references is fast and CPU cache friendly.
let first_ref = packed.get(first_item);
let second_ref_mut = packed.get_mut(second_item);
// Removing might be slower.
let first = packed.remove(first_item);
}
DePacked is free and open source! All code in this repository is dual-licensed under either:
at your option.