summaryrefslogtreecommitdiff
path: root/absl/strings/has_absl_stringify_test.cc
diff options
context:
space:
mode:
authorGravatar Zie Weaver <zearen@google.com>2023-10-18 16:17:51 -0700
committerGravatar Copybara-Service <copybara-worker@google.com>2023-10-18 16:18:51 -0700
commit9687a8ea750bfcddf790372093245a1d041b21a3 (patch)
tree32c06ea4c2061d0212872cc37b73ce487b1af84c /absl/strings/has_absl_stringify_test.cc
parent7676c565eedd2581b66839c239f3825d8e381119 (diff)
Add a template gadget to detect whether a type supports the ostream operator.
I.e. for a type `Example`, if ``` std::ostream& operator<<(std::ostream&, const Example&); ``` is declared, `absl::HasOstreamOperator<Example>::value` is `true`. PiperOrigin-RevId: 574637891 Change-Id: I123d8f35a6e3ea894745133f7d81b1610fb475d5
Diffstat (limited to 'absl/strings/has_absl_stringify_test.cc')
-rw-r--r--absl/strings/has_absl_stringify_test.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/absl/strings/has_absl_stringify_test.cc b/absl/strings/has_absl_stringify_test.cc
index e9915c66..59e7e1d3 100644
--- a/absl/strings/has_absl_stringify_test.cc
+++ b/absl/strings/has_absl_stringify_test.cc
@@ -17,6 +17,7 @@
#include <string>
#include "gtest/gtest.h"
+#include "absl/types/optional.h"
namespace {
@@ -32,6 +33,8 @@ TEST(HasAbslStringifyTest, Works) {
EXPECT_FALSE(absl::HasAbslStringify<std::string>::value);
EXPECT_FALSE(absl::HasAbslStringify<TypeWithoutAbslStringify>::value);
EXPECT_TRUE(absl::HasAbslStringify<TypeWithAbslStringify>::value);
+ EXPECT_FALSE(
+ absl::HasAbslStringify<absl::optional<TypeWithAbslStringify>>::value);
}
} // namespace