Index: mojo/public/cpp/bindings/lib/template_util.h |
diff --git a/mojo/public/cpp/bindings/lib/template_util.h b/mojo/public/cpp/bindings/lib/template_util.h |
index c4aeb4302fe4979ec91324def2a1b0d822383e98..6767acf82e78fbc38bcc94c5dd8fb98499eb286f 100644 |
--- a/mojo/public/cpp/bindings/lib/template_util.h |
+++ b/mojo/public/cpp/bindings/lib/template_util.h |
@@ -104,6 +104,15 @@ struct RemovePointer<T*> { |
typedef T type; |
}; |
+template <template <typename...> class Template, typename T> |
+struct IsSpecializationOf : FalseType {}; |
+ |
+template <template <typename...> class Template, typename... Args> |
+struct IsSpecializationOf<Template, Template<Args...>> : TrueType {}; |
+ |
+template <class A, class B> |
+struct LogicalOr : IntegralConstant<bool, A::value || B::value> {}; |
+ |
} // namespace internal |
} // namespace mojo |