Esempio n. 1
0
 constexpr operator std::pair<X, Y>() const
 {
     return {begin(), end()};
 }
Esempio n. 2
0
 constexpr bool empty() const
 {
     return begin() == end();
 }
Esempio n. 3
0
 iterator begin()
 { return base_.begin(); }
Esempio n. 4
0
 iterator_range &operator=(iterator_range<X, Y> rng)
 {
     begin() = detail::move(rng).begin();
     end() = detail::move(rng).end();
     return *this;
 }
Esempio n. 5
0
 void sort()
 { std::stable_sort( base_.begin(), base_.end(), comparator() ); }
Esempio n. 6
0
 std::pair< const_iterator, const_iterator > equal_range( key_type const& k) const
 {
     return std::equal_range(
             base_.begin(), base_.end(),
             k, comparator() );
 }
Esempio n. 7
0
 const_iterator upper_bound( key_type const& k) const
 {
     return std::upper_bound(
             base_.begin(), base_.end(),
             k, comparator() );
 }
Esempio n. 8
0
 iterator lower_bound( key_type const& k)
 {
     return std::lower_bound(
             base_.begin(), base_.end(),
             k, comparator() );
 }
Esempio n. 9
0
 const_iterator begin() const
 { return base_.begin(); }