Export of internal Abseil changes.
-- 997d2a8d12d9395046b0bdfc2f206a0b2fe2f1f9 by Abseil Team <absl-team@google.com>: Typo fix: IsHashCallble -> IsHashCallable PiperOrigin-RevId: 245235915 -- 2baa4df2e3284df925bfd728bab7d7bd60ae002e by Eric Fiselier <ericwf@google.com>: Remove need for `Windows.h` header in `waiter.h` Ideally we never want to drag in `windows.h` because it's non-modular and hijacks global identifiers like `ERROR` and `OPAQUE`. This patch changes our waiter implementation to store char buffers for `SRWLOCK` and `CONDITION_VARIABLE` instead of the types directly. PiperOrigin-RevId: 245189428 -- 33cfacd70c0d148d7590472dbcce38c93f2f7a34 by Matthew Brown <matthewbr@google.com>: Internal change. PiperOrigin-RevId: 245092803 GitOrigin-RevId: 997d2a8d12d9395046b0bdfc2f206a0b2fe2f1f9 Change-Id: Icccd6cbe4b205096f6a71e114d135303ee4c1857
This commit is contained in:
parent
33841c5c96
commit
cd86d0d20a
4 changed files with 70 additions and 17 deletions
|
|
@ -425,10 +425,10 @@ TEST(HashValueTest, Maps) {
|
|||
}
|
||||
|
||||
template <typename T, typename = void>
|
||||
struct IsHashCallble : std::false_type {};
|
||||
struct IsHashCallable : std::false_type {};
|
||||
|
||||
template <typename T>
|
||||
struct IsHashCallble<T, absl::void_t<decltype(std::declval<absl::Hash<T>>()(
|
||||
struct IsHashCallable<T, absl::void_t<decltype(std::declval<absl::Hash<T>>()(
|
||||
std::declval<const T&>()))>> : std::true_type {};
|
||||
|
||||
template <typename T, typename = void>
|
||||
|
|
@ -445,7 +445,7 @@ TEST(IsHashableTest, ValidHash) {
|
|||
EXPECT_TRUE(std::is_move_constructible<absl::Hash<int>>::value);
|
||||
EXPECT_TRUE(absl::is_copy_assignable<absl::Hash<int>>::value);
|
||||
EXPECT_TRUE(absl::is_move_assignable<absl::Hash<int>>::value);
|
||||
EXPECT_TRUE(IsHashCallble<int>::value);
|
||||
EXPECT_TRUE(IsHashCallable<int>::value);
|
||||
EXPECT_TRUE(IsAggregateInitializable<absl::Hash<int>>::value);
|
||||
}
|
||||
|
||||
|
|
@ -458,7 +458,7 @@ TEST(IsHashableTest, PoisonHash) {
|
|||
EXPECT_FALSE(std::is_move_constructible<absl::Hash<X>>::value);
|
||||
EXPECT_FALSE(absl::is_copy_assignable<absl::Hash<X>>::value);
|
||||
EXPECT_FALSE(absl::is_move_assignable<absl::Hash<X>>::value);
|
||||
EXPECT_FALSE(IsHashCallble<X>::value);
|
||||
EXPECT_FALSE(IsHashCallable<X>::value);
|
||||
EXPECT_FALSE(IsAggregateInitializable<absl::Hash<X>>::value);
|
||||
}
|
||||
#endif // ABSL_META_INTERNAL_STD_HASH_SFINAE_FRIENDLY_
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue