Expand description
This crate serves as a replacement for intmap
in cases where the keys you are working with
are already hashed. This is essentially just a wrapper around a hashbrown::HashTable<V>
(with
the added detail that the keys are stored alongside the values).
This is significantly faster than intmap
or the built-in std::collections::HashMap
type,
as it performs no hashing. Thus, if your keys are not randomly distributed, performance
can take a nosedive.
And yes, I realise this crate is basically a “leftpad”, but it can potentially save a tonne of boilerplate. I had to write it anyway since, so I might as well clean it up and publish it.
A lot of surrounding code (i.e., tests and benchmarks) was taken as-is from intmap
.
Structs§
- Extract
If - Iterator over extracted values.
- Hash
Table - Low-level hash table with explicit hashing.
- IntTable
- A Map associating unique integers and randomly distributed integers to values.
- IntTable
Iter - Wrapper around an owned iterator from an
IntTable
- Occupied
Entry - Allows for in-place manipulation of existing table entries
- Vacant
Entry - Allows for in-place manipulation of vacant table entries
Enums§
- Entry
- An IntTable entry