Classes | |
| struct | AggregateBarrier |
| class | CityHashState |
| struct | ContainerAsVector |
| struct | ContainerAsVector< std::tuple< T...> > |
| struct | ContainerAsVector< std::tuple<> > |
| struct | DefaultEquals |
| struct | EqVisitor |
| struct | ExpandVisitor |
| struct | Hash |
| struct | HashImpl |
| struct | HashSelect |
| class | HashStateBase |
| struct | is_hashable |
| struct | is_uniquely_represented |
| struct | is_uniquely_represented< bool > |
| struct | is_uniquely_represented< CustomHashType< Tags...>, typename EnableIfContained< InvokeTag::kUniquelyRepresented, Tags...>::type > |
| struct | is_uniquely_represented< Integral, typename std::enable_if< std::is_integral< Integral >::value >::type > |
| struct | is_uniquely_represented< unsigned char > |
| struct | MakeTypeSet |
| struct | MakeTypeSet< T, Ts...> |
| struct | OdrUse |
| struct | PoisonedHash |
| struct | PrintVisitor |
| struct | RunOnStartup |
| class | SpyHashStateImpl |
| struct | TypeSet |
| struct | VariantVisitor |
Typedefs | |
| typedef std::pair< uint64_t, uint64_t > | uint128 |
Functions | |
| template<typename H , typename B > | |
| std::enable_if< std::is_same < B, bool >::value, H >::type | AbslHashValue (H hash_state, B value) |
| template<typename T , typename U , typename = absl::enable_if_t<!std::is_same<T, U>::value>, int = RunOnStartup<SpyHashStateImpl<T>::SetDirectAbslHashValueError>::run> | |
| void | AbslHashValue (SpyHashStateImpl< T >, const U &) |
| template<typename H , typename Enum > | |
| std::enable_if< std::is_enum < Enum >::value, H >::type | AbslHashValue (H hash_state, Enum e) |
| template<typename H , typename Float > | |
| std::enable_if< std::is_same < Float, float >::value||std::is_same < Float, double >::value, H > ::type | AbslHashValue (H hash_state, Float value) |
| template<typename H , typename LongDouble > | |
| std::enable_if< std::is_same < LongDouble, long double > ::value, H >::type | AbslHashValue (H hash_state, LongDouble value) |
| template<typename H , typename T > | |
| H | AbslHashValue (H hash_state, T *ptr) |
| template<typename H > | |
| H | AbslHashValue (H hash_state, std::nullptr_t) |
| template<typename H , typename T1 , typename T2 > | |
| std::enable_if< is_hashable < T1 >::value &&is_hashable < T2 >::value, H >::type | AbslHashValue (H hash_state, const std::pair< T1, T2 > &p) |
| template<typename H , typename... Ts> | |
| std::enable_if < absl::conjunction < is_hashable< Ts >...>::value, H >::type | AbslHashValue (H hash_state, const std::tuple< Ts...> &t) |
| template<typename H , typename T , typename D > | |
| H | AbslHashValue (H hash_state, const std::unique_ptr< T, D > &ptr) |
| template<typename H , typename T > | |
| H | AbslHashValue (H hash_state, const std::shared_ptr< T > &ptr) |
| template<typename H > | |
| H | AbslHashValue (H hash_state, absl::string_view str) |
| template<typename H , typename T , size_t N> | |
| std::enable_if< is_hashable< T > ::value, H >::type | AbslHashValue (H hash_state, const std::array< T, N > &array) |
| template<typename H , typename T , typename Allocator > | |
| std::enable_if< is_hashable< T > ::value, H >::type | AbslHashValue (H hash_state, const std::deque< T, Allocator > &deque) |
| template<typename H , typename T , typename Allocator > | |
| std::enable_if< is_hashable< T > ::value, H >::type | AbslHashValue (H hash_state, const std::forward_list< T, Allocator > &list) |
| template<typename H , typename T , typename Allocator > | |
| std::enable_if< is_hashable< T > ::value, H >::type | AbslHashValue (H hash_state, const std::list< T, Allocator > &list) |
| template<typename H , typename T , typename Allocator > | |
| std::enable_if< is_hashable< T > ::value &&!std::is_same< T, bool >::value, H >::type | AbslHashValue (H hash_state, const std::vector< T, Allocator > &vector) |
| template<typename H , typename Key , typename T , typename Compare , typename Allocator > | |
| std::enable_if< is_hashable < Key >::value &&is_hashable < T >::value, H >::type | AbslHashValue (H hash_state, const std::map< Key, T, Compare, Allocator > &map) |
| template<typename H , typename Key , typename T , typename Compare , typename Allocator > | |
| std::enable_if< is_hashable < Key >::value &&is_hashable < T >::value, H >::type | AbslHashValue (H hash_state, const std::multimap< Key, T, Compare, Allocator > &map) |
| template<typename H , typename Key , typename Compare , typename Allocator > | |
| std::enable_if< is_hashable < Key >::value, H >::type | AbslHashValue (H hash_state, const std::set< Key, Compare, Allocator > &set) |
| template<typename H , typename Key , typename Compare , typename Allocator > | |
| std::enable_if< is_hashable < Key >::value, H >::type | AbslHashValue (H hash_state, const std::multiset< Key, Compare, Allocator > &set) |
| template<typename H , typename T > | |
| std::enable_if< is_hashable< T > ::value, H >::type | AbslHashValue (H hash_state, const absl::optional< T > &opt) |
| template<typename H , typename... T> | |
| std::enable_if< conjunction < is_hashable< T >...>::value, H >::type | AbslHashValue (H hash_state, const absl::variant< T...> &v) |
| uint32_t | CityHash32 (const char *s, size_t len) |
| uint64_t | CityHash64 (const char *s, size_t len) |
| uint64_t | CityHash64WithSeed (const char *s, size_t len, uint64_t seed) |
| uint64_t | CityHash64WithSeeds (const char *s, size_t len, uint64_t seed0, uint64_t seed1) |
| static uint32_t | Fetch32 (const char *p) |
| static uint64_t | Fetch64 (const char *p) |
| static uint32_t | fmix (uint32_t h) |
| uint64_t | Hash128to64 (const uint128 &x) |
| static uint32_t | Hash32Len0to4 (const char *s, size_t len) |
| static uint32_t | Hash32Len13to24 (const char *s, size_t len) |
| static uint32_t | Hash32Len5to12 (const char *s, size_t len) |
| template<typename H , typename T > | |
| H | hash_bytes (H hash_state, const T &value) |
| template<typename H , typename T > | |
| std::enable_if < is_uniquely_represented< T > ::value, H >::type | hash_range_or_bytes (H hash_state, const T *data, size_t size) |
| template<typename H , typename Tuple , size_t... Is> | |
| H | hash_tuple (H hash_state, const Tuple &t, absl::index_sequence< Is...>) |
| static uint64_t | HashLen0to16 (const char *s, size_t len) |
| static uint64_t | HashLen16 (uint64_t u, uint64_t v) |
| static uint64_t | HashLen16 (uint64_t u, uint64_t v, uint64_t mul) |
| static uint64_t | HashLen17to32 (const char *s, size_t len) |
| static uint64_t | HashLen33to64 (const char *s, size_t len) |
| static uint32_t | Mur (uint32_t a, uint32_t h) |
| static uint64_t | Rotate (uint64_t val, int shift) |
| static uint32_t | Rotate32 (uint32_t val, int shift) |
| void | setup () |
| static uint64_t | ShiftMix (uint64_t val) |
| TEST (CityHashTest, Unchanging) | |
| void | TestUnchanging (const uint64_t *expected, int offset, int len) |
| uint64_t | Uint128High64 (const uint128 &x) |
| uint64_t | Uint128Low64 (const uint128 &x) |
| template<typename Container , typename Eq > | |
| ABSL_MUST_USE_RESULT testing::AssertionResult | VerifyTypeImplementsAbslHashCorrectly (const Container &values, Eq equals) |
| static std::pair< uint64_t, uint64_t > | WeakHashLen32WithSeeds (uint64_t w, uint64_t x, uint64_t y, uint64_t z, uint64_t a, uint64_t b) |
| static std::pair< uint64_t, uint64_t > | WeakHashLen32WithSeeds (const char *s, uint64_t a, uint64_t b) |
Variables | |
| static const uint32_t | c1 = 0xcc9e2d51 |
| static const uint32_t | c2 = 0x1b873593 |
| static char | data [kDataSize] |
| static const uint64_t | k0 = 0xc3a5c85c97cb3127ULL |
| static const uint64_t | k1 = 0xb492b66fbe98f273ULL |
| static const uint64_t | k2 = 0x9ae16a3b2f90404fULL |
| static const int | kDataSize = 1 << 20 |
| static const uint64_t | kSeed0 = 1234567 |
| static const uint64_t | kSeed1 = k0 |
| static const int | kTestSize = 300 |
| static const uint64_t | testdata [kTestSize][4] |
| typedef std::pair<uint64_t, uint64_t> absl::hash_internal::uint128 |
| std::enable_if<std::is_same<B, bool>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| B | value | ||
| ) |
Definition at line 204 of file internal/hash.h.
| void absl::hash_internal::AbslHashValue | ( | SpyHashStateImpl< T > | , |
| const U & | |||
| ) |
| std::enable_if<std::is_enum<Enum>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| Enum | e | ||
| ) |
Definition at line 212 of file internal/hash.h.
| std::enable_if<std::is_same<Float, float>::value || std::is_same<Float, double>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| Float | value | ||
| ) |
Definition at line 227 of file internal/hash.h.
| std::enable_if<std::is_same<LongDouble, long double>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| LongDouble | value | ||
| ) |
Definition at line 238 of file internal/hash.h.
| H absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| T * | ptr | ||
| ) |
Definition at line 269 of file internal/hash.h.
| H absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| std::nullptr_t | |||
| ) |
Definition at line 280 of file internal/hash.h.
| std::enable_if<is_hashable<T1>::value && is_hashable<T2>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::pair< T1, T2 > & | p | ||
| ) |
Definition at line 299 of file internal/hash.h.
| std::enable_if<absl::conjunction<is_hashable<Ts>...>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::tuple< Ts...> & | t | ||
| ) |
Definition at line 321 of file internal/hash.h.
| H absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::unique_ptr< T, D > & | ptr | ||
| ) |
Definition at line 332 of file internal/hash.h.
| H absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::shared_ptr< T > & | ptr | ||
| ) |
Definition at line 338 of file internal/hash.h.
| H absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| absl::string_view | str | ||
| ) |
Definition at line 360 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::array< T, N > & | array | ||
| ) |
Definition at line 372 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::deque< T, Allocator > & | deque | ||
| ) |
Definition at line 380 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::forward_list< T, Allocator > & | list | ||
| ) |
Definition at line 392 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::list< T, Allocator > & | list | ||
| ) |
Definition at line 404 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value && !std::is_same<T, bool>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::vector< T, Allocator > & | vector | ||
| ) |
Definition at line 419 of file internal/hash.h.
| std::enable_if<is_hashable<Key>::value && is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::map< Key, T, Compare, Allocator > & | map | ||
| ) |
Definition at line 434 of file internal/hash.h.
| std::enable_if<is_hashable<Key>::value && is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::multimap< Key, T, Compare, Allocator > & | map | ||
| ) |
Definition at line 446 of file internal/hash.h.
| std::enable_if<is_hashable<Key>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::set< Key, Compare, Allocator > & | set | ||
| ) |
Definition at line 456 of file internal/hash.h.
| std::enable_if<is_hashable<Key>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const std::multiset< Key, Compare, Allocator > & | set | ||
| ) |
Definition at line 466 of file internal/hash.h.
| std::enable_if<is_hashable<T>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const absl::optional< T > & | opt | ||
| ) |
Definition at line 480 of file internal/hash.h.
| std::enable_if<conjunction<is_hashable<T>...>::value, H>::type absl::hash_internal::AbslHashValue | ( | H | hash_state, |
| const absl::variant< T...> & | v | ||
| ) |
Definition at line 499 of file internal/hash.h.
| uint32_t absl::hash_internal::CityHash32 | ( | const char * | s, |
| size_t | len | ||
| ) |
| uint64_t absl::hash_internal::CityHash64 | ( | const char * | s, |
| size_t | len | ||
| ) |
| uint64_t absl::hash_internal::CityHash64WithSeed | ( | const char * | s, |
| size_t | len, | ||
| uint64_t | seed | ||
| ) |
| uint64_t absl::hash_internal::CityHash64WithSeeds | ( | const char * | s, |
| size_t | len, | ||
| uint64_t | seed0, | ||
| uint64_t | seed1 | ||
| ) |
| static uint32_t absl::hash_internal::Fetch32 | ( | const char * | p | ) | [static] |
| static uint64_t absl::hash_internal::Fetch64 | ( | const char * | p | ) | [static] |
| static uint32_t absl::hash_internal::fmix | ( | uint32_t | h | ) | [static] |
| uint64_t absl::hash_internal::Hash128to64 | ( | const uint128 & | x | ) | [inline] |
| static uint32_t absl::hash_internal::Hash32Len0to4 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| static uint32_t absl::hash_internal::Hash32Len13to24 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| static uint32_t absl::hash_internal::Hash32Len5to12 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| H absl::hash_internal::hash_bytes | ( | H | hash_state, |
| const T & | value | ||
| ) |
Definition at line 185 of file internal/hash.h.
| std::enable_if<!is_uniquely_represented< T >::value, H >::type absl::hash_internal::hash_range_or_bytes | ( | H | hash_state, |
| const T * | data, | ||
| size_t | size | ||
| ) |
Definition at line 523 of file internal/hash.h.
| H absl::hash_internal::hash_tuple | ( | H | hash_state, |
| const Tuple & | t, | ||
| absl::index_sequence< Is...> | |||
| ) |
Definition at line 308 of file internal/hash.h.
| static uint64_t absl::hash_internal::HashLen0to16 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| static uint64_t absl::hash_internal::HashLen16 | ( | uint64_t | u, |
| uint64_t | v | ||
| ) | [static] |
| static uint64_t absl::hash_internal::HashLen16 | ( | uint64_t | u, |
| uint64_t | v, | ||
| uint64_t | mul | ||
| ) | [static] |
| static uint64_t absl::hash_internal::HashLen17to32 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| static uint64_t absl::hash_internal::HashLen33to64 | ( | const char * | s, |
| size_t | len | ||
| ) | [static] |
| static uint32_t absl::hash_internal::Mur | ( | uint32_t | a, |
| uint32_t | h | ||
| ) | [static] |
| static uint64_t absl::hash_internal::Rotate | ( | uint64_t | val, |
| int | shift | ||
| ) | [static] |
| static uint32_t absl::hash_internal::Rotate32 | ( | uint32_t | val, |
| int | shift | ||
| ) | [static] |
| void absl::hash_internal::setup | ( | ) |
Definition at line 34 of file city_test.cc.
| static uint64_t absl::hash_internal::ShiftMix | ( | uint64_t | val | ) | [static] |
| absl::hash_internal::TEST | ( | CityHashTest | , |
| Unchanging | |||
| ) |
Definition at line 583 of file city_test.cc.
| void absl::hash_internal::TestUnchanging | ( | const uint64_t * | expected, |
| int | offset, | ||
| int | len | ||
| ) |
Definition at line 575 of file city_test.cc.
| uint64_t absl::hash_internal::Uint128High64 | ( | const uint128 & | x | ) | [inline] |
| uint64_t absl::hash_internal::Uint128Low64 | ( | const uint128 & | x | ) | [inline] |
| ABSL_MUST_USE_RESULT testing::AssertionResult absl::hash_internal::VerifyTypeImplementsAbslHashCorrectly | ( | const Container & | values, |
| Eq | equals | ||
| ) |
Definition at line 187 of file hash_testing.h.
| static std::pair<uint64_t, uint64_t> absl::hash_internal::WeakHashLen32WithSeeds | ( | uint64_t | w, |
| uint64_t | x, | ||
| uint64_t | y, | ||
| uint64_t | z, | ||
| uint64_t | a, | ||
| uint64_t | b | ||
| ) | [static] |
| static std::pair<uint64_t, uint64_t> absl::hash_internal::WeakHashLen32WithSeeds | ( | const char * | s, |
| uint64_t | a, | ||
| uint64_t | b | ||
| ) | [static] |
const uint32_t absl::hash_internal::c1 = 0xcc9e2d51 [static] |
const uint32_t absl::hash_internal::c2 = 0x1b873593 [static] |
char absl::hash_internal::data[kDataSize] [static] |
Definition at line 31 of file city_test.cc.
static const uint64_t absl::hash_internal::k0 = 0xc3a5c85c97cb3127ULL [static] |
const uint64_t absl::hash_internal::k1 = 0xb492b66fbe98f273ULL [static] |
const uint64_t absl::hash_internal::k2 = 0x9ae16a3b2f90404fULL [static] |
const int absl::hash_internal::kDataSize = 1 << 20 [static] |
Definition at line 28 of file city_test.cc.
const uint64_t absl::hash_internal::kSeed0 = 1234567 [static] |
Definition at line 26 of file city_test.cc.
const uint64_t absl::hash_internal::kSeed1 = k0 [static] |
Definition at line 27 of file city_test.cc.
const int absl::hash_internal::kTestSize = 300 [static] |
Definition at line 29 of file city_test.cc.
const uint64_t absl::hash_internal::testdata[kTestSize][4] [static] |
Definition at line 48 of file city_test.cc.