segvec
segvec copied to clipboard
SegVec data structure for rust. Similar to Vec, but allocates memory in chunks of increasing size.
Right now, the implementation is significantly slower than `Vec` for most things. This can be fixed. TODO: - [x] `insert`, `remove`, and `drain` can copy mem to avoid some iterative...
Right now, sort is unstable. The API should match `Vec` here, so should be called `sort_unstable` and `sort_unstable_by`. Would also like to add `sort` and `sort_by` that are stable.
There are a few usages of `unsafe` - I tried to cover these cases in tests, but I need to make a pass through the code to add `// Safety:...
- Remove the `thin-segments` feature due to limited usefulness - Enable some additional tests - Upgrade some dependencies
Having Linear power-of-two mem_config would allow to use cheap bit shifts instead of divisions and modulos. Thou I tested code from Linear as-is with POT capacity, and it seems that...
I've now improved the bits I need. In future you'll see less contributions from me. I will still look and improve things eventually (esp running the tests under miri see...
WIP! caching segments should improve performance considerably. integration and benching follows.