Lines Matching refs:__k
1048 mapped_type& operator[](const key_type& __k);
1050 mapped_type& operator[](key_type&& __k);
1053 mapped_type& at(const key_type& __k);
1054 const mapped_type& at(const key_type& __k) const;
1120 pair<iterator, bool> try_emplace(const key_type& __k, _Args&&... __args)
1122 iterator __p = lower_bound(__k);
1123 if ( __p != end() && !key_comp()(__k, __p->first))
1128 _VSTD::piecewise_construct, _VSTD::forward_as_tuple(__k),
1135 pair<iterator, bool> try_emplace(key_type&& __k, _Args&&... __args)
1137 iterator __p = lower_bound(__k);
1138 if ( __p != end() && !key_comp()(__k, __p->first))
1143 _VSTD::piecewise_construct, _VSTD::forward_as_tuple(_VSTD::move(__k)),
1150 iterator try_emplace(const_iterator __h, const key_type& __k, _Args&&... __args)
1152 iterator __p = lower_bound(__k);
1153 if ( __p != end() && !key_comp()(__k, __p->first))
1157 _VSTD::piecewise_construct, _VSTD::forward_as_tuple(__k),
1163 iterator try_emplace(const_iterator __h, key_type&& __k, _Args&&... __args)
1165 iterator __p = lower_bound(__k);
1166 if ( __p != end() && !key_comp()(__k, __p->first))
1170 _VSTD::piecewise_construct, _VSTD::forward_as_tuple(_VSTD::move(__k)),
1176 pair<iterator, bool> insert_or_assign(const key_type& __k, _Vp&& __v)
1178 iterator __p = lower_bound(__k);
1179 if ( __p != end() && !key_comp()(__k, __p->first))
1184 return _VSTD::make_pair(emplace_hint(__p, __k, _VSTD::forward<_Vp>(__v)), true);
1189 pair<iterator, bool> insert_or_assign(key_type&& __k, _Vp&& __v)
1191 iterator __p = lower_bound(__k);
1192 if ( __p != end() && !key_comp()(__k, __p->first))
1197 … return _VSTD::make_pair(emplace_hint(__p, _VSTD::move(__k), _VSTD::forward<_Vp>(__v)), true);
1202 iterator insert_or_assign(const_iterator __h, const key_type& __k, _Vp&& __v)
1204 iterator __p = lower_bound(__k);
1205 if ( __p != end() && !key_comp()(__k, __p->first))
1210 return emplace_hint(__h, __k, _VSTD::forward<_Vp>(__v));
1215 iterator insert_or_assign(const_iterator __h, key_type&& __k, _Vp&& __v)
1217 iterator __p = lower_bound(__k);
1218 if ( __p != end() && !key_comp()(__k, __p->first))
1223 return emplace_hint(__h, _VSTD::move(__k), _VSTD::forward<_Vp>(__v));
1234 size_type erase(const key_type& __k)
1235 {return __tree_.__erase_unique(__k);}
1248 iterator find(const key_type& __k) {return __tree_.find(__k);}
1250 const_iterator find(const key_type& __k) const {return __tree_.find(__k);}
1255 find(const _K2& __k) {return __tree_.find(__k);}
1259 find(const _K2& __k) const {return __tree_.find(__k);}
1263 size_type count(const key_type& __k) const
1264 {return __tree_.__count_unique(__k);}
1269 count(const _K2& __k) const {return __tree_.__count_unique(__k);}
1272 iterator lower_bound(const key_type& __k)
1273 {return __tree_.lower_bound(__k);}
1275 const_iterator lower_bound(const key_type& __k) const
1276 {return __tree_.lower_bound(__k);}
1281 lower_bound(const _K2& __k) {return __tree_.lower_bound(__k);}
1286 lower_bound(const _K2& __k) const {return __tree_.lower_bound(__k);}
1290 iterator upper_bound(const key_type& __k)
1291 {return __tree_.upper_bound(__k);}
1293 const_iterator upper_bound(const key_type& __k) const
1294 {return __tree_.upper_bound(__k);}
1299 upper_bound(const _K2& __k) {return __tree_.upper_bound(__k);}
1303 upper_bound(const _K2& __k) const {return __tree_.upper_bound(__k);}
1307 pair<iterator,iterator> equal_range(const key_type& __k)
1308 {return __tree_.__equal_range_unique(__k);}
1310 pair<const_iterator,const_iterator> equal_range(const key_type& __k) const
1311 {return __tree_.__equal_range_unique(__k);}
1316 equal_range(const _K2& __k) {return __tree_.__equal_range_unique(__k);}
1320 equal_range(const _K2& __k) const {return __tree_.__equal_range_unique(__k);}
1337 __node_holder __construct_node_with_key(key_type&& __k);
1343 __node_holder __construct_node_with_key(const key_type& __k);
1346 __find_equal_key(__node_base_pointer& __parent, const key_type& __k);
1348 __find_equal_key(__node_base_const_pointer& __parent, const key_type& __k) const;
1351 // Find place to insert if __k doesn't exist
1354 // If __k exists, set parent to node of __k and return reference to node of __k
1358 const key_type& __k)
1365 if (__tree_.value_comp().key_comp()(__k, __nd->__value_.__cc.first))
1375 else if (__tree_.value_comp().key_comp()(__nd->__value_.__cc.first, __k))
1396 // Find __k
1398 // return reference to null leaf iv __k does not exist.
1399 // If __k exists, set parent to node of __k and return reference to node of __k
1403 const key_type& __k) const
1410 if (__tree_.value_comp().key_comp()(__k, __nd->__value_.__cc.first))
1420 else if (__tree_.value_comp().key_comp()(__nd->__value_.__cc.first, __k))
1484 map<_Key, _Tp, _Compare, _Allocator>::__construct_node_with_key(key_type&& __k)
1488 __node_traits::construct(__na, _VSTD::addressof(__h->__value_.__cc.first), _VSTD::move(__k));
1518 map<_Key, _Tp, _Compare, _Allocator>::__construct_node_with_key(const key_type& __k)
1522 __node_traits::construct(__na, _VSTD::addressof(__h->__value_.__cc.first), __k);
1531 map<_Key, _Tp, _Compare, _Allocator>::operator[](const key_type& __k)
1534 __node_base_pointer& __child = __find_equal_key(__parent, __k);
1538 __node_holder __h = __construct_node_with_key(__k);
1549 map<_Key, _Tp, _Compare, _Allocator>::operator[](key_type&& __k)
1552 __node_base_pointer& __child = __find_equal_key(__parent, __k);
1556 __node_holder __h = __construct_node_with_key(_VSTD::move(__k));
1567 map<_Key, _Tp, _Compare, _Allocator>::at(const key_type& __k)
1570 __node_base_pointer& __child = __find_equal_key(__parent, __k);
1580 map<_Key, _Tp, _Compare, _Allocator>::at(const key_type& __k) const
1583 __node_base_const_pointer __child = __find_equal_key(__parent, __k);
1968 size_type erase(const key_type& __k) {return __tree_.__erase_multi(__k);}
1981 iterator find(const key_type& __k) {return __tree_.find(__k);}
1983 const_iterator find(const key_type& __k) const {return __tree_.find(__k);}
1988 find(const _K2& __k) {return __tree_.find(__k);}
1992 find(const _K2& __k) const {return __tree_.find(__k);}
1996 size_type count(const key_type& __k) const
1997 {return __tree_.__count_multi(__k);}
2002 count(const _K2& __k) const {return __tree_.__count_multi(__k);}
2005 iterator lower_bound(const key_type& __k)
2006 {return __tree_.lower_bound(__k);}
2008 const_iterator lower_bound(const key_type& __k) const
2009 {return __tree_.lower_bound(__k);}
2014 lower_bound(const _K2& __k) {return __tree_.lower_bound(__k);}
2019 lower_bound(const _K2& __k) const {return __tree_.lower_bound(__k);}
2023 iterator upper_bound(const key_type& __k)
2024 {return __tree_.upper_bound(__k);}
2026 const_iterator upper_bound(const key_type& __k) const
2027 {return __tree_.upper_bound(__k);}
2032 upper_bound(const _K2& __k) {return __tree_.upper_bound(__k);}
2036 upper_bound(const _K2& __k) const {return __tree_.upper_bound(__k);}
2040 pair<iterator,iterator> equal_range(const key_type& __k)
2041 {return __tree_.__equal_range_multi(__k);}
2043 pair<const_iterator,const_iterator> equal_range(const key_type& __k) const
2044 {return __tree_.__equal_range_multi(__k);}
2049 equal_range(const _K2& __k) {return __tree_.__equal_range_multi(__k);}
2053 equal_range(const _K2& __k) const {return __tree_.__equal_range_multi(__k);}