libstdc++: map Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30#ifndef _GLIBCXX_EXPERIMENTAL_MAP
31#define _GLIBCXX_EXPERIMENTAL_MAP 1
32
33#pragma GCC system_header
34
36
37#if __cplusplus >= 201402L
38
39#include <map>
42
43namespace std _GLIBCXX_VISIBILITY(default)
44{
45_GLIBCXX_BEGIN_NAMESPACE_VERSION
46
47namespace experimental
48{
49inline namespace fundamentals_v2
50{
51 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc,
52 typename _Predicate>
53 inline void
54 erase_if(map<_Key, _Tp, _Compare, _Alloc>& __cont, _Predicate __pred)
55 {
56 _GLIBCXX_STD_C::map<_Key, _Tp, _Compare, _Alloc>& __ucont = __cont;
57 std::__detail::__erase_nodes_if(__cont, __ucont, __pred);
58 }
59
60 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc,
61 typename _Predicate>
62 inline void
63 erase_if(multimap<_Key, _Tp, _Compare, _Alloc>& __cont, _Predicate __pred)
64 {
65 _GLIBCXX_STD_C::multimap<_Key, _Tp, _Compare, _Alloc>& __ucont = __cont;
66 std::__detail::__erase_nodes_if(__cont, __ucont, __pred);
67 }
68
69 namespace pmr {
70 template<typename _Key, typename _Tp, typename _Compare = less<_Key>>
71 using map
72 = std::map<_Key, _Tp, _Compare,
73 polymorphic_allocator<pair<const _Key, _Tp>>>;
74
75 template<typename _Key, typename _Tp, typename _Compare = less<_Key>>
76 using multimap
78 polymorphic_allocator<pair<const _Key, _Tp>>>;
79 }
80}
81}
82
83_GLIBCXX_END_NAMESPACE_VERSION
84}
85
86#endif
87
88#endif
ISO C++ entities toplevel namespace is std.
A standard container made up of (key,value) pairs, which can be retrieved based on a key,...
A standard container made up of (key,value) pairs, which can be retrieved based on a key,...