Module |
|
Header |
/Engine/Source/Runtime/Core/Public/Experimental/Containers/SherwoodHashTable.h |
Include |
#include "Experimental/Containers/SherwoodHashTable.h" |
template<typename KeyType, typename ValueType, typename KeyFuncs>
struct TSherwoodHashTable
Implementation of Robin Hood hash table based on sherwood_v3_table by Malte Skarupke. Good for small keys and values. If key is already a high quality hash, then identity hash function should be used. Current limitations:
Requires key and value to be trivial types.
Does not allow move or copy.
Does not support custom allocators.
Name | Description | |
---|---|---|
|
TSherwoodHashTable() |
|
|
TSherwoodHashTable ( |
|
|
TSherwoodHashTable ( |
Name | Description | |
---|---|---|
|
~TSherwoodHashTable() |
Name | Description | ||
---|---|---|---|
|
ValueType &#... |
Add |
|
|
AllocateData ( |
||
|
T * |
AllocateUninitialized ( |
|
|
ComputeMaxLookups ( |
||
|
Deallocate ( |
||
|
DeallocateData ( |
||
|
Empty() |
||
|
TTuple< cons... |
Find ( |
|
|
ValueType &#... |
FindOrAdd ( |
|
|
ValueType &#... |
FindOrAddByHash |
|
|
Grow() |
||
|
NumSlots() |
||
|
Rehash ( |
||
|
Reserve ( |
||
|
Reset() |
Name | Description | ||
---|---|---|---|
|
TSherwoodHas... |
operator= ( |
|
|
TSherwoodHas... |
operator= ( |
Name |
Description |
|
---|---|---|
|
FData |
Name |
Description |
---|---|
HashType |
Name |
Description |
---|---|
bIsMap |
TSherwoodHashTable can be used to implement a set or a map. |
MaxLoadFactor |
Ratio between number of stored elements and allocated capacity beyond which the container will be grown (doubled in size). |
MinNumLookups |
Minimum probing distance when searching for an entry slot. |
MinNumSlots |
Smallest capacity of non-empty container. |