summaryrefslogtreecommitdiffstats
path: root/googletest/include/gtest/gtest-printers.h
diff options
context:
space:
mode:
Diffstat (limited to 'googletest/include/gtest/gtest-printers.h')
-rw-r--r--googletest/include/gtest/gtest-printers.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/googletest/include/gtest/gtest-printers.h b/googletest/include/gtest/gtest-printers.h
index 4260e4f7..67c87f47 100644
--- a/googletest/include/gtest/gtest-printers.h
+++ b/googletest/include/gtest/gtest-printers.h
@@ -679,6 +679,26 @@ class UniversalPrinter {
GTEST_DISABLE_MSC_WARNINGS_POP_()
};
+#if GTEST_INTERNAL_HAS_ANY
+
+// Printer for std::any / absl::any
+
+template <>
+class UniversalPrinter<Any> {
+ public:
+ static void Print(const Any& value, ::std::ostream* os) {
+ if (value.has_value())
+ *os << "'any' type with value of type " << GetTypeName();
+ else
+ *os << "'any' type with no value";
+ }
+
+ private:
+ static std::string GetTypeName() { return "the element type"; }
+};
+
+#endif // GTEST_INTERNAL_HAS_ANY
+
#if GTEST_INTERNAL_HAS_OPTIONAL
// Printer for std::optional / absl::optional
OpenPOWER on IntegriCloud