hashbrown
hashbrown copied to clipboard
Rust port of Google's SwissTable hash map
Context: I maintain [`elsa`](https://docs.rs/elsa), a crate which contains append-only collections that can be appended to with only `&self` references. Recently @steffahn brought [this bug](https://github.com/Manishearth/elsa/issues/48) to my attention, where elsa's assumption...
There are two issues with `RawTable` being in hashbrown crate: * extra "feature" in hashbrown crate makes it slightly harder to use (for both crate authors and for users) *...
Fixes https://github.com/rust-lang/rust/issues/79178 There are two changes in this PR: 1) Add a `max_capacity()` method. The `capacity()` method provides a lower bound on the capacity, this complements it by providing an...
Chrome 91 just released yesterday with stable support for WASM SIMD. Firefox will shortly follow as well. Rust also intends to stabilize the intrinsics soon. So I decided to go...
This PR implements iterator which starts at arbitrary location in the table. There are several motivations for this change: - For security reasons one may wish to start iterations at...
See my comment here for the motivation: https://github.com/rust-lang/rust/issues/59618#issuecomment-1520583112 . Unfortunately, the impl can't just be added. hashbrown's `EntryRef`s are currently `Send`, which means that they can't be allowed to co-exist....
That would allow downstream crates using the raw api, but which aren't on rustc nightly, to provide a custom allocator. If you agree this is reasonable, I can send a...
I tried to use a `HashMap::par_iter()` and was surprised to see that it does not execute in parallel. Is this something that can be fixed, or documented somewhere? As it...
The length of the correct spelling is also less, so char count test results will need to be adjusted. https://github.com/rust-lang/hashbrown/blob/master/src/map.rs#L1294 and onward,
`get_many_mut` on slices (https://github.com/rust-lang/rust/pull/83608) does not *need* to handle a variable number of keys (although it might be nice) because, worse case scenario, you can sort your input array of...