2016-10-28 18:20:08 +00:00
|
|
|
// 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
|
|
|
|
|
2016-11-22 18:57:03 +00:00
|
|
|
#include {{format_include(config.protocol.package, "Forward")}}
|
2016-10-28 18:20:08 +00:00
|
|
|
#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)
|