Index: third_party/inspector_protocol/lib/Collections_h.template |
diff --git a/third_party/inspector_protocol/lib/Collections_h.template b/third_party/inspector_protocol/lib/Collections_h.template |
new file mode 100644 |
index 0000000000000000000000000000000000000000..3f760287b58f0e5aebfe2fc1fc81063cfb9ed8bf |
--- /dev/null |
+++ b/third_party/inspector_protocol/lib/Collections_h.template |
@@ -0,0 +1,43 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef {{"_".join(config.protocol.namespace)}}_Collections_h |
+#define {{"_".join(config.protocol.namespace)}}_Collections_h |
+ |
+#include "{{config.protocol.package}}/Forward.h" |
+#include <cstddef> |
+ |
+#if defined(__APPLE__) && !defined(_LIBCPP_VERSION) |
+#include <map> |
+#include <set> |
+ |
+{% for namespace in config.protocol.namespace %} |
+namespace {{namespace}} { |
+{% endfor %} |
+ |
+template <class Key, class T> using HashMap = std::map<Key, T>; |
+template <class Key> using HashSet = std::set<Key>; |
+ |
+{% for namespace in config.protocol.namespace %} |
+} // namespace {{namespace}} |
+{% endfor %} |
+ |
+#else |
+#include <unordered_map> |
+#include <unordered_set> |
+ |
+{% for namespace in config.protocol.namespace %} |
+namespace {{namespace}} { |
+{% endfor %} |
+ |
+template <class Key, class T> using HashMap = std::unordered_map<Key, T>; |
+template <class Key> using HashSet = std::unordered_set<Key>; |
+ |
+{% for namespace in config.protocol.namespace %} |
+} // namespace {{namespace}} |
+{% endfor %} |
+ |
+#endif // defined(__APPLE__) && !defined(_LIBCPP_VERSION) |
+ |
+#endif // !defined({{"_".join(config.protocol.namespace)}}_Collections_h) |