| Home | Libraries | People | FAQ | More

### Iterator related

Synopsis Complexities | interval sets | interval maps | element sets | element maps
--- | --- | --- | --- | ---
`J T::begin()` | O(1) | O(1) | O(1) | O(1)
`J T::end()` | O(1) | O(1) | O(1) | O(1)
`J T::rbegin()` | O(1) | O(1) | O(1) | O(1)
`J T::rend()` | O(1) | O(1) | O(1) | O(1)
`J T::lower_bound(const key_type&)` | O(log n) | O(log n) | O(log n) | O(log n)
`J T::upper_bound(const key_type&)` | O(log n) | O(log n) | O(log n) | O(log n)
`pair<J,J> T::equal_range(const key_type&)` | O(log n) | O(log n) | O(log n) | O(log n)

Iterator related |
--- | ---
          iterator T::begin()
    const_iterator T::begin()const
| Returns an iterator to the first value of the container.
          iterator T::end()
    const_iterator T::end()const
| Returns an iterator to a position `end()` after the last value of the container.
          reverse_iterator T::rbegin()
    const_reverse_iterator T::rbegin()const
| Returns a reverse iterator to the last value of the container.
          reverse_iterator T::rend()
    const_reverse_iterator T::rend()const
| Returns a reverse iterator to a position `rend()` before the first value of the container.
          iterator T::lower_bound(const key_type& k)
    const_iterator T::lower_bound(const key_type& key)const
| Returns an iterator that points to the first element `first`, that does not compare less than `key_type key`. `first` can be equal or greater than `key`, or it may overlap `key` for interval containers.
          iterator T::upper_bound(const key_type&)
    const_iterator T::upper_bound(const key_type&)const
| Returns an iterator that points to the first element `past`, that compares greater than `key_type key`.
                pair<iterator,iterator> T::equal_range(const key_type& key)
    pair<const_iterator,const_iterator> T::equal_range(const key_type& key)const
| Returns a range `[first, past)` of iterators to all elements of the container that compare neither less than nor greater than `key_type key`. For element containers `std::set` and `icl::map`, `equal_range` contains at most one iterator pointing the element equal to `key`, if it exists. For interval containers `equal_range` contains iterators to all intervals that overlap interval `key`.

See also . . .

Element iteration

Back to section . . .

Function Synopsis
Interface