## Modulesยง

## Structsยง

- A reference to a hash table bucket containing a
`T`

. - FullBucketsIndices ๐Iterator which returns an index of every full bucket in the table.
- Global ๐The global memory allocator.
- A reference to an empty bucket into which an can be inserted.
- ProbeSeq ๐Probe sequence based on triangular numbers, which is guaranteed (since our table size is a power of two) to visit every group of elements exactly once.
- Iterator which consumes elements without freeing the table storage.
- RawExtractIf ๐
- Iterator which consumes a table and returns elements.
- Iterator which returns a raw pointer to every full bucket in the table.
- Iterator over occupied buckets that could match a given hash.
- RawIterHashInner ๐
- RawIterRange ๐Iterator over a sub-range of a table. Unlike
`RawIter`

this iterator does not track an item count. - A raw hash table with an unsafe API.
- RawTableInner ๐Non-generic part of
`RawTable`

which allows functions to be instantiated only once regardless of how many different key-value types are used. - TableLayout ๐Helper which allows the max calculation for ctrl_align to be statically computed for each T while keeping the rest of
`calculate_layout_for`

independent of`T`

## Enumsยง

- Fallibility ๐Whether memory allocation errors should return an error or abort.

## Constantsยง

- DELETED ๐Control byte value for a deleted bucket.
- EMPTY ๐Control byte value for an empty bucket.
- MIN_HASH_LEN ๐

## Traitsยง

- Allocator ๐An implementation of
`Allocator`

can allocate, grow, shrink, and deallocate arbitrary blocks of data described via`Layout`

. - RawTableClone ๐Specialization of
`clone_from`

for`Copy`

types - SizedTypeProperties ๐

## Functionsยง

- Returns the maximum effective capacity for the given bucket mask, taking the maximum load factor into account.
- capacity_to_buckets ๐Returns the number of buckets needed to hold the given number of items, taking the maximum load factor into account.
- h1 ๐Primary hash function, used to select the initial bucket to probe from.
- h2 ๐Secondary hash function, saved in the low 7 bits of the control byte.
- invalid_mut ๐
- is_full ๐Checks whether a control byte represents a full bucket (top bit is clear).
- is_special ๐Checks whether a control byte represents a special value (top bit is set).
- special_is_empty ๐Checks whether a special control value is EMPTY (just check 1 bit).