class MixingHashState
Defined at line 995 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
MixingHashState
Public Methods
void MixingHashState (MixingHashState && )
Move only
Defined at line 1014 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
MixingHashState & operator= (MixingHashState && )
Defined at line 1015 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
MixingHashState combine_contiguous (MixingHashState hash_state, const unsigned char * first, size_t size)
MixingHashState::combine_contiguous()
Fundamental base case for hash recursion: mixes the given range of bytes
into the hash state.
Defined at line 1021 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
template <typename T, absl::enable_if_t<IntegralFastPath<T>::value, int> = 0>
size_t hash (T value)
MixingHashState::hash()
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 1038 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
template <typename T, absl::enable_if_t<!IntegralFastPath<T>::value, int> = 0>
size_t hash (const T & value)
Overload of MixingHashState::hash()
Defined at line 1045 of file ../../third_party/abseil-cpp/absl/hash/internal/hash.h
Friends
class HashState
class HashStateBase