35 template<
class Key,
class T,
class Compare>
49 template<
class Key,
class T,
class Compare>
71 template<
class Key,
class T,
class Compare>
80 f_i = lower_bound( value.first );
84 f_i =
begin() + size() - 1;
88 else if (
Le((*f_i).first,value.first))
95 V_c.insert( f_i , value );
99 return std::pair<iterator,bool>(f_i,success);
110 template<
class Key,
class T,
class Compare>
118 if ( hint_i == high_i ) {
119 if ( empty() ||
Ge( value.first , hint_i[-1].first ) ) {
120 V_c.push_back(value);
125 if (
Lt(value.first,(*hint_i).first) )
131 hint_i = std::upper_bound( low_i, high_i, value, value_compare(
Lt) );
133 V_c.insert(hint_i,value);
134 return V_c.begin() +
n;
143 template<
class Key,
class T,
class Compare>
149 for (; first_i != last_i; ++first_i)
150 insert(
end() , *first_i );
163 template<
class Key,
class T,
class Compare>
176 template<
class Key,
class T,
class Compare>
182 V_c.erase(first_i, last_i);
190 template<
class Key,
class T,
class Compare>
196 std::pair<iterator,iterator> range( equal_range(key) );
197 erase(range.first, range.second);
198 return range.second - range.first;
212 template<
class Key,
class T,
class Compare>
222 if (
Le((*f_i).first , key) )
234 template<
class Key,
class T,
class Compare>
249 template<
class Key,
class T,
class Compare>
262 template<
class Key,
class T,
class Compare>
276 template<
class Key,
class T,
class Compare>
291 f_i = lower_bound(key);
293 if ((f_i!=
end()) &&
Le((*f_i).first,key))
294 return (*f_i).second;
298 return V_c[
n].second;
311 template<
class Key,
class T,
class Compare>
317 std::pair<const_iterator,const_iterator>
318 range( equal_range(key) );
319 return range.second - range.first;
327 template<
class Key,
class T,
class Compare>
335 if (
Le((*f_i).first , key ))
347 template<
class Key,
class T,
class Compare>
362 template<
class Key,
class T,
class Compare>
375 template<
class Key,
class T,
class Compare>
376 std::pair<typename vmap<Key,T,Compare>::const_iterator,
390 template<
class Key,
class T,
class Compare>
397 return (*f_i).second;
T * value_type(const SliceIterator< T > &)
PartBunchBase< T, Dim >::ConstIterator end(PartBunchBase< T, Dim > const &bunch)
PartBunchBase< T, Dim >::ConstIterator begin(PartBunchBase< T, Dim > const &bunch)
bool Ge(double a, double b)
bool Lt(double a, double b)
bool Le(double a, double b)
std::string::iterator iterator
vmap< Key, T, Compare > & operator=(const vmap< Key, T, Compare > &x)
iterator upper_bound(const key_type &x)
rep_type::iterator iterator
void erase(iterator position_i)
std::pair< iterator, iterator > equal_range(const key_type &x)
rep_type::size_type size_type
T & operator[](const key_type &k)
iterator find(const key_type &x)
size_type count(const key_type &x) const
std::pair< Key, T > value_type
vmap(const Compare &comp=Compare())
std::pair< iterator, bool > insert(const value_type &x)
iterator lower_bound(const key_type &x)
rep_type::const_iterator const_iterator