Lines 39-48
Link Here
|
39 |
# define hash_map __WORKAROUND_RENAME(hash_map) |
39 |
# define hash_map __WORKAROUND_RENAME(hash_map) |
40 |
# define hash_multimap __WORKAROUND_RENAME(hash_multimap) |
40 |
# define hash_multimap __WORKAROUND_RENAME(hash_multimap) |
41 |
|
41 |
|
42 |
# define _STLP_KEY_PAIR pair< const _Key, _Tp > |
42 |
# define _STLP_KEY_PAIR _STLP_STD::pair< const _Key, _Tp > |
43 |
# define _STLP_HASHTABLE hashtable \ |
43 |
# define _STLP_HASHTABLE _STLP_STD::hashtable< _STLP_STD::pair < const _Key, _Tp >, _Key, _HashFcn, \ |
44 |
< pair < const _Key, _Tp >, _Key, _HashFcn, \ |
44 |
_STLP_STD::_STLP_SELECT1ST( _STLP_KEY_PAIR, _Key ), _EqualKey, _Alloc > |
45 |
_STLP_SELECT1ST( _STLP_KEY_PAIR, _Key ), _EqualKey, _Alloc > |
|
|
46 |
|
45 |
|
47 |
template <class _Key, class _Tp, __DFL_TMPL_PARAM(_HashFcn,hash<_Key>), |
46 |
template <class _Key, class _Tp, __DFL_TMPL_PARAM(_HashFcn,hash<_Key>), |
48 |
__DFL_TMPL_PARAM(_EqualKey,equal_to<_Key>), |
47 |
__DFL_TMPL_PARAM(_EqualKey,equal_to<_Key>), |
Lines 50-55
Link Here
|
50 |
class hash_map |
49 |
class hash_map |
51 |
{ |
50 |
{ |
52 |
private: |
51 |
private: |
|
|
52 |
#ifndef _STLP_HASHTABLE |
53 |
#error _STLP_HASHTABLE |
54 |
#endif |
53 |
typedef _STLP_HASHTABLE _Ht; |
55 |
typedef _STLP_HASHTABLE _Ht; |
54 |
typedef hash_map<_Key, _Tp, _HashFcn, _EqualKey, _Alloc> _Self; |
56 |
typedef hash_map<_Key, _Tp, _HashFcn, _EqualKey, _Alloc> _Self; |
55 |
public: |
57 |
public: |
Lines 162-168
Link Here
|
162 |
const_iterator end() const { return _M_ht.end(); } |
164 |
const_iterator end() const { return _M_ht.end(); } |
163 |
|
165 |
|
164 |
public: |
166 |
public: |
165 |
pair<iterator,bool> insert(const value_type& __obj) |
167 |
_STLP_STD::pair<iterator,bool> insert(const value_type& __obj) |
166 |
{ return _M_ht.insert_unique(__obj); } |
168 |
{ return _M_ht.insert_unique(__obj); } |
167 |
#ifdef _STLP_MEMBER_TEMPLATES |
169 |
#ifdef _STLP_MEMBER_TEMPLATES |
168 |
template <class _InputIterator> |
170 |
template <class _InputIterator> |
Lines 175-181
Link Here
|
175 |
void insert(const_iterator __f, const_iterator __l) |
177 |
void insert(const_iterator __f, const_iterator __l) |
176 |
{ _M_ht.insert_unique(__f, __l); } |
178 |
{ _M_ht.insert_unique(__f, __l); } |
177 |
#endif /*_STLP_MEMBER_TEMPLATES */ |
179 |
#endif /*_STLP_MEMBER_TEMPLATES */ |
178 |
pair<iterator,bool> insert_noresize(const value_type& __obj) |
180 |
_STLP_STD::pair<iterator,bool> insert_noresize(const value_type& __obj) |
179 |
{ return _M_ht.insert_unique_noresize(__obj); } |
181 |
{ return _M_ht.insert_unique_noresize(__obj); } |
180 |
|
182 |
|
181 |
iterator find(const key_type& __key) { return _M_ht.find(__key); } |
183 |
iterator find(const key_type& __key) { return _M_ht.find(__key); } |
Lines 190-198
Link Here
|
190 |
|
192 |
|
191 |
size_type count(const key_type& __key) const { return _M_ht.count(__key); } |
193 |
size_type count(const key_type& __key) const { return _M_ht.count(__key); } |
192 |
|
194 |
|
193 |
pair<iterator, iterator> equal_range(const key_type& __key) |
195 |
_STLP_STD::pair<iterator, iterator> equal_range(const key_type& __key) |
194 |
{ return _M_ht.equal_range(__key); } |
196 |
{ return _M_ht.equal_range(__key); } |
195 |
pair<const_iterator, const_iterator> |
197 |
_STLP_STD::pair<const_iterator, const_iterator> |
196 |
equal_range(const key_type& __key) const |
198 |
equal_range(const key_type& __key) const |
197 |
{ return _M_ht.equal_range(__key); } |
199 |
{ return _M_ht.equal_range(__key); } |
198 |
|
200 |
|