1 stable release
1.0.0 | Apr 10, 2020 |
---|
#528 in Memory management
8KB
130 lines
Memory pool for slices and paths
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.