class MixingHashState

Defined at line 1328 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

Public Methods

void MixingHashState (MixingHashState && )

Move only

Defined at line 1336 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

MixingHashState & operator= (MixingHashState && )

Defined at line 1337 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

MixingHashState combine_contiguous (MixingHashState hash_state, const unsigned char * first, size_t size)

Fundamental base case for hash recursion: mixes the given range of bytes

into the hash state.

Defined at line 1341 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

template <typename T>
size_t hash (const T & value)

Defined at line 1351 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

template <typename T, absl::enable_if_t<IntegralFastPath<T>::value, int> = 0>
size_t hash_with_seed (T value, size_t seed)

For performance reasons in non-opt mode, we specialize this for

integral types.

Otherwise we would be instantiating and calling dozens of functions for

something that is just one multiplication and a couple xor's.

The result should be the same as running the whole algorithm, but faster.

Defined at line 1361 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

template <typename T, absl::enable_if_t<!IntegralFastPath<T>::value, int> = 0>
size_t hash_with_seed (const T & value, size_t seed)

Defined at line 1367 of file ../../third_party/abseil-cpp/src/absl/hash/internal/hash.h

Friends

class CombineRaw
class HashState
template <typename H>
H MixingHashState (H , WeaklyMixedInteger )
class HashStateBase