A standard container composed of unique keys (containing at most one of each key value) in which the elements' keys are the elements themselves.
A standard container composed of equivalent keys (possibly containing multiple of each key value) in which the elements' keys are the elements themselves.
34 _GLIBCXX_BEGIN_NAMESPACE_VERSION
38 template<
class _Value,
39 class _Hash = hash<_Value>,
40 class _Pred = std::equal_to<_Value>,
41 class _Alloc = std::allocator<_Value>,
42 bool __cache_hash_code =
false>
44 :
public _Hashtable<_Value, _Value, _Alloc,
45 std::_Identity<_Value>, _Pred,
46 _Hash, __detail::_Mod_range_hashing,
47 __detail::_Default_ranged_hash,
48 __detail::_Prime_rehash_policy,
49 __cache_hash_code, true, true>
51 typedef _Hashtable<_Value, _Value, _Alloc,
52 std::_Identity<_Value>, _Pred,
53 _Hash, __detail::_Mod_range_hashing,
54 __detail::_Default_ranged_hash,
55 __detail::_Prime_rehash_policy,
56 __cache_hash_code,
true,
true>
60 typedef typename _Base::size_type size_type;
61 typedef typename _Base::hasher hasher;
62 typedef typename _Base::key_equal key_equal;
63 typedef typename _Base::allocator_type allocator_type;
66 __unordered_set(size_type __n = 10,
67 const hasher& __hf = hasher(),
68 const key_equal& __eql = key_equal(),
69 const allocator_type& __a = allocator_type())
70 : _Base(__n, __hf, __detail::_Mod_range_hashing(),
71 __detail::_Default_ranged_hash(), __eql,
72 std::_Identity<_Value>(), __a)
75 template<
typename _InputIterator>
76 __unordered_set(_InputIterator __f, _InputIterator __l,
78 const hasher& __hf = hasher(),
79 const key_equal& __eql = key_equal(),
80 const allocator_type& __a = allocator_type())
81 : _Base(__f, __l, __n, __hf, __detail::_Mod_range_hashing(),
82 __detail::_Default_ranged_hash(), __eql,
83 std::_Identity<_Value>(), __a)
87 template<
class _Value,
88 class _Hash = hash<_Value>,
89 class _Pred = std::equal_to<_Value>,
90 class _Alloc = std::allocator<_Value>,
91 bool __cache_hash_code =
false>
92 class __unordered_multiset
93 :
public _Hashtable<_Value, _Value, _Alloc,
94 std::_Identity<_Value>, _Pred,
95 _Hash, __detail::_Mod_range_hashing,
96 __detail::_Default_ranged_hash,
97 __detail::_Prime_rehash_policy,
98 __cache_hash_code, true, false>
100 typedef _Hashtable<_Value, _Value, _Alloc,
101 std::_Identity<_Value>, _Pred,
102 _Hash, __detail::_Mod_range_hashing,
103 __detail::_Default_ranged_hash,
104 __detail::_Prime_rehash_policy,
105 __cache_hash_code,
true,
false>
109 typedef typename _Base::size_type size_type;
110 typedef typename _Base::hasher hasher;
111 typedef typename _Base::key_equal key_equal;
112 typedef typename _Base::allocator_type allocator_type;
115 __unordered_multiset(size_type __n = 10,
116 const hasher& __hf = hasher(),
117 const key_equal& __eql = key_equal(),
118 const allocator_type& __a = allocator_type())
119 : _Base(__n, __hf, __detail::_Mod_range_hashing(),
120 __detail::_Default_ranged_hash(), __eql,
121 std::_Identity<_Value>(), __a)
125 template<
typename _InputIterator>
126 __unordered_multiset(_InputIterator __f, _InputIterator __l,
127 typename _Base::size_type __n = 0,
128 const hasher& __hf = hasher(),
129 const key_equal& __eql = key_equal(),
130 const allocator_type& __a = allocator_type())
131 : _Base(__f, __l, __n, __hf, __detail::_Mod_range_hashing(),
132 __detail::_Default_ranged_hash(), __eql,
133 std::_Identity<_Value>(), __a)
137 template<
class _Value,
class _Hash,
class _Pred,
class _Alloc,
138 bool __cache_hash_code>
140 swap(__unordered_set<_Value, _Hash, _Pred, _Alloc, __cache_hash_code>& __x,
141 __unordered_set<_Value, _Hash, _Pred, _Alloc, __cache_hash_code>& __y)
144 template<
class _Value,
class _Hash,
class _Pred,
class _Alloc,
145 bool __cache_hash_code>
147 swap(__unordered_multiset<_Value, _Hash, _Pred,
148 _Alloc, __cache_hash_code>& __x,
149 __unordered_multiset<_Value, _Hash, _Pred,
150 _Alloc, __cache_hash_code>& __y)
169 template<
class _Value,
170 class _Hash = hash<_Value>,
171 class _Pred = std::equal_to<_Value>,
172 class _Alloc = std::allocator<_Value> >
174 :
public __unordered_set<_Value, _Hash, _Pred, _Alloc>
176 typedef __unordered_set<_Value, _Hash, _Pred, _Alloc> _Base;
179 typedef typename _Base::value_type value_type;
180 typedef typename _Base::size_type size_type;
181 typedef typename _Base::hasher hasher;
182 typedef typename _Base::key_equal key_equal;
183 typedef typename _Base::allocator_type allocator_type;
186 unordered_set(size_type __n = 10,
187 const hasher& __hf = hasher(),
188 const key_equal& __eql = key_equal(),
189 const allocator_type& __a = allocator_type())
190 : _Base(__n, __hf, __eql, __a)
193 template<
typename _InputIterator>
194 unordered_set(_InputIterator __f, _InputIterator __l,
196 const hasher& __hf = hasher(),
197 const key_equal& __eql = key_equal(),
198 const allocator_type& __a = allocator_type())
199 : _Base(__f, __l, __n, __hf, __eql, __a)
218 template<
class _Value,
219 class _Hash = hash<_Value>,
220 class _Pred = std::equal_to<_Value>,
221 class _Alloc = std::allocator<_Value> >
222 class unordered_multiset
223 :
public __unordered_multiset<_Value, _Hash, _Pred, _Alloc>
225 typedef __unordered_multiset<_Value, _Hash, _Pred, _Alloc> _Base;
228 typedef typename _Base::value_type value_type;
229 typedef typename _Base::size_type size_type;
230 typedef typename _Base::hasher hasher;
231 typedef typename _Base::key_equal key_equal;
232 typedef typename _Base::allocator_type allocator_type;
235 unordered_multiset(size_type __n = 10,
236 const hasher& __hf = hasher(),
237 const key_equal& __eql = key_equal(),
238 const allocator_type& __a = allocator_type())
239 : _Base(__n, __hf, __eql, __a)
243 template<
typename _InputIterator>
244 unordered_multiset(_InputIterator __f, _InputIterator __l,
245 typename _Base::size_type __n = 0,
246 const hasher& __hf = hasher(),
247 const key_equal& __eql = key_equal(),
248 const allocator_type& __a = allocator_type())
249 : _Base(__f, __l, __n, __hf, __eql, __a)
253 template<
class _Value,
class _Hash,
class _Pred,
class _Alloc>
255 swap(unordered_set<_Value, _Hash, _Pred, _Alloc>& __x,
256 unordered_set<_Value, _Hash, _Pred, _Alloc>& __y)
259 template<
class _Value,
class _Hash,
class _Pred,
class _Alloc>
261 swap(unordered_multiset<_Value, _Hash, _Pred, _Alloc>& __x,
262 unordered_multiset<_Value, _Hash, _Pred, _Alloc>& __y)
265 _GLIBCXX_END_NAMESPACE_VERSION
void swap(exception_ptr &__lhs, exception_ptr &__rhs)
Definition: exception_ptr.h:160