123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- // -*- C++ -*-
- //===----------------------------------------------------------------------===//
- //
- // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
- // See https://llvm.org/LICENSE.txt for license information.
- // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
- //
- //===----------------------------------------------------------------------===//
- #ifndef _LIBCPP_EXPERIMENTAL_UNORDERED_MAP
- #define _LIBCPP_EXPERIMENTAL_UNORDERED_MAP
- /*
- experimental/unordered_map synopsis
- // C++1z
- namespace std {
- namespace experimental {
- inline namespace fundamentals_v1 {
- namespace pmr {
- template <class Key, class T,
- class Hash = hash<Key>,
- class Pred = equal_to<Key>>
- using unordered_map =
- std::unordered_map<Key, T, Hash, Pred,
- polymorphic_allocator<pair<const Key,T>>>;
- template <class Key, class T,
- class Hash = hash<Key>,
- class Pred = equal_to<Key>>
- using unordered_multimap =
- std::unordered_multimap<Key, T, Hash, Pred,
- polymorphic_allocator<pair<const Key,T>>>;
- } // namespace pmr
- } // namespace fundamentals_v1
- } // namespace experimental
- } // namespace std
- */
- #include <__assert> // all public C++ headers provide the assertion handler
- #include <experimental/__config>
- #include <experimental/memory_resource>
- #include <unordered_map>
- #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
- # pragma GCC system_header
- #endif
- _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR
- #ifndef _LIBCPP_CXX03_LANG
- template <class _Key, class _Value,
- class _Hash = hash<_Key>, class _Pred = equal_to<_Key>>
- using unordered_map = _VSTD::unordered_map<_Key, _Value, _Hash, _Pred,
- polymorphic_allocator<pair<const _Key, _Value>>>;
- template <class _Key, class _Value,
- class _Hash = hash<_Key>, class _Pred = equal_to<_Key>>
- using unordered_multimap = _VSTD::unordered_multimap<_Key, _Value, _Hash, _Pred,
- polymorphic_allocator<pair<const _Key, _Value>>>;
- #endif // _LIBCPP_CXX03_LANG
- _LIBCPP_END_NAMESPACE_LFTS_PMR
- #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
- # include <algorithm>
- # include <array>
- # include <bit>
- # include <functional>
- # include <vector>
- #endif
- #endif /* _LIBCPP_EXPERIMENTAL_UNORDERED_MAP */
|