Crates.io | slice-arena |
lib.rs | slice-arena |
version | 1.0.0 |
source | src |
created_at | 2020-04-10 16:09:36.720469 |
updated_at | 2020-04-10 16:09:36.720469 |
description | Store lots of tiny slices with low overhead, in contiguous blocks of memory |
homepage | https://lib.rs/slice-arena |
repository | |
max_upload_size | |
id | 228382 |
size | 7,032 |
SliceArena can store any number of slices, string slices or paths with minimal overhead even for very short slices.
It allocates contiguous blocks of memory, and frees them all at once when it's dropped.
It's a faster and more efficient option than Box<str>
, Rc<String>
, etc.
Note that you can't hold an owned SliceArena
object in the same struct as slices from the arena, due to borrow checker's "self-referential struct" limitation. Make your constructors take an arena as an argument, by reference.