Module map
Expand description
Re-exports of map types and utilities.
This module exports the following types:
HashMap
andHashSet
from the standard library orhashbrown
crate. The “map-hashbrown” feature can be used to force the use ofhashbrown
, and is required inno_std
environments.- [
IndexMap
] and [IndexSet
] from theindexmap
crate, if the “map-indexmap” feature is enabled. - The previously-listed hash map types prefixed with
Fb
. These are type aliases withFixedBytes<N>
as the key, andFbBuildHasher
as the hasher builder. This hasher is optimized for hashing fixed-size byte arrays, and wraps around the default hasher builder. It performs best when the hasher isfxhash
, which is enabled by default with the “map-fxhash” feature. - The previously-listed hash map types prefixed with
Selector
,Address
, andB256
. These useFbBuildHasher
with the respective fixed-size byte array as the key. See the previous point for more information.
Unless specified otherwise, the default hasher builder used by these types is
DefaultHashBuilder
. This hasher prioritizes speed over security. Users who require HashDoS
resistance should enable the “rand” feature so that the hasher is initialized using a random
seed.
Note that using the types provided in this module may require using different APIs than the
standard library as they might not be generic over the hasher state, such as using
HashMap::default()
instead of HashMap::new()
.
Modules§
- hash_
map - A hash map implemented with quadratic probing and SIMD lookup.
- hash_
set - A hash set implemented as a
HashMap
where the value is()
.
Structs§
- FbBuild
Hasher BuildHasher
optimized for hashing fixed-size byte arrays.- FbHasher
Hasher
optimized for hashing fixed-size byte arrays.
Enums§
- Entry
- A view into a single entry in a map, which may either be vacant or occupied.
Type Aliases§
- Address
Map HashMap
optimized for hashingAddress
.- Address
Set HashSet
optimized for hashingAddress
.- B256Map
HashMap
optimized for hashingB256
.- B256Set
HashSet
optimized for hashingB256
.- Default
Hash Builder - The default
BuildHasher
used byHashMap
andHashSet
. - Default
Hasher - The default
Hasher
used byHashMap
andHashSet
. - FbMap
HashMap
optimized for hashing fixed-size byte arrays.- FbSet
HashSet
optimized for hashing fixed-size byte arrays.- HashMap
- A
HashMap
using the default hasher. - HashSet
- A
HashSet
using the default hasher. - Selector
Map HashMap
optimized for hashing [Selector
].- Selector
Set HashSet
optimized for hashing [Selector
].