|
cds
2.3.2
|
FeldmanHashMap related definitions
More...
Data Structures | |
| struct | make_traits |
Metafunction converting option list to feldman_hashmap::traits. More... | |
| struct | traits |
FeldmanHashMap traits More... | |
Typedefs | |
| template<typename EventCounter = cds::atomicity::event_counter> | |
| using | stat = cds::intrusive::feldman_hashset::stat< EventCounter > |
FeldmanHashMap internal statistics, see cds::intrusive::feldman_hashset::stat | |
| typedef cds::intrusive::feldman_hashset::empty_stat | empty_stat |
FeldmanHashMap empty internal statistics | |
| template<typename T > | |
| using | bitwise_compare = cds::intrusive::feldman_hashset::bitwise_compare< T > |
Bit-wise memcmp-based comparator for hash value T. | |
| typedef cds::intrusive::feldman_hashset::level_statistics | level_statistics |
FeldmanHashMap level statistics | |
| template<size_t Size> | |
| using | hash_size = cds::intrusive::feldman_hashset::hash_size< Size > |
| Key size option. More... | |
| template<typename Splitter > | |
| using | hash_splitter = cds::intrusive::feldman_hashset::hash_splitter< Splitter > |
| Hash splitter option. More... | |
FeldmanHashMap related definitions
| using cds::container::feldman_hashmap::hash_size = typedef cds::intrusive::feldman_hashset::hash_size< Size > |
Key size option.
By default, the size of hash value is sizeof( hash_type ) where hash_type is type of hash() result or sizeof( key ) if you use fixed-sized key.
Sometimes that size is wrong, for example, for that 6-byte key:
Here sizeof( key_type ) == 8 so static_assert will be thrown.
For that case you can specify hash_size explicitly.
Value 0 means auto-calculated sizeof( key_type ).
| using cds::container::feldman_hashmap::hash_splitter = typedef cds::intrusive::feldman_hashset::hash_splitter< Splitter > |
Hash splitter option.
This trait specifies hash bit-string splitter algorithm. By default, cds::algo::number_splitter is used if HashType is a number, cds::algo::split_bitstring otherwise.