1522a7f95SEric Fiselier// -*- C++ -*-
2eb8650a7SLouis Dionne//===----------------------------------------------------------------------===//
3522a7f95SEric Fiselier//
457b08b09SChandler Carruth// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
557b08b09SChandler Carruth// See https://llvm.org/LICENSE.txt for license information.
657b08b09SChandler Carruth// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7522a7f95SEric Fiselier//
8522a7f95SEric Fiselier//===----------------------------------------------------------------------===//
9522a7f95SEric Fiselier
10522a7f95SEric Fiselier#ifndef _LIBCPP_EXPERIMENTAL_MAP
11522a7f95SEric Fiselier#define _LIBCPP_EXPERIMENTAL_MAP
12*385cc25aSLouis Dionne
13522a7f95SEric Fiselier/*
14522a7f95SEric Fiselier    experimental/map synopsis
15522a7f95SEric Fiselier
16522a7f95SEric Fiselier// C++1z
17522a7f95SEric Fiseliernamespace std {
18522a7f95SEric Fiseliernamespace experimental {
19522a7f95SEric Fiselierinline namespace fundamentals_v1 {
20522a7f95SEric Fiseliernamespace pmr {
21522a7f95SEric Fiselier
22522a7f95SEric Fiselier  template <class Key, class T, class Compare = less<Key>>
23522a7f95SEric Fiselier  using map = std::map<Key, T, Compare,
24522a7f95SEric Fiselier                       polymorphic_allocator<pair<const Key,T>>>;
25522a7f95SEric Fiselier
26522a7f95SEric Fiselier  template <class Key, class T, class Compare = less<Key>>
27522a7f95SEric Fiselier  using multimap = std::multimap<Key, T, Compare,
28522a7f95SEric Fiselier                                 polymorphic_allocator<pair<const Key,T>>>;
29522a7f95SEric Fiselier
30522a7f95SEric Fiselier} // namespace pmr
31522a7f95SEric Fiselier} // namespace fundamentals_v1
32522a7f95SEric Fiselier} // namespace experimental
33522a7f95SEric Fiselier} // namespace std
34522a7f95SEric Fiselier
35522a7f95SEric Fiselier */
36522a7f95SEric Fiselier
37*385cc25aSLouis Dionne#include <__assert> // all public C++ headers provide the assertion handler
38522a7f95SEric Fiselier#include <experimental/__config>
39522a7f95SEric Fiselier#include <experimental/memory_resource>
404d81a46fSArthur O'Dwyer#include <map>
41522a7f95SEric Fiselier
42522a7f95SEric Fiselier#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
43522a7f95SEric Fiselier#  pragma GCC system_header
44522a7f95SEric Fiselier#endif
45522a7f95SEric Fiselier
46522a7f95SEric Fiselier_LIBCPP_BEGIN_NAMESPACE_LFTS_PMR
47522a7f95SEric Fiselier
48522a7f95SEric Fiseliertemplate <class _Key, class _Value, class  _Compare = less<_Key>>
49522a7f95SEric Fiselierusing map = _VSTD::map<_Key, _Value, _Compare,
50522a7f95SEric Fiselier                        polymorphic_allocator<pair<const _Key, _Value>>>;
51522a7f95SEric Fiselier
52522a7f95SEric Fiseliertemplate <class _Key, class _Value, class  _Compare = less<_Key>>
53522a7f95SEric Fiselierusing multimap = _VSTD::multimap<_Key, _Value, _Compare,
54522a7f95SEric Fiselier                        polymorphic_allocator<pair<const _Key, _Value>>>;
55522a7f95SEric Fiselier
56522a7f95SEric Fiselier_LIBCPP_END_NAMESPACE_LFTS_PMR
57522a7f95SEric Fiselier
58522a7f95SEric Fiselier#endif /* _LIBCPP_EXPERIMENTAL_MAP */
59