1[/ 2 Copyright (c) 2008-2009 Joachim Faulhaber 3 4 Distributed under the Boost Software License, Version 1.0. 5 (See accompanying file LICENSE_1_0.txt or copy at 6 http://www.boost.org/LICENSE_1_0.txt) 7] 8 9 10[/ //= Iterator related ===================================================================] 11[section Iterator related] 12 13 14[table 15[[['*Synopsis Complexities*]] [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__] ] 16[[`J T::begin()`] [__O1__] [__O1__] [__O1__] [__O1__] ] 17[[`J T::end()`] [__O1__] [__O1__] [__O1__] [__O1__] ] 18[[`J T::rbegin()`] [__O1__] [__O1__] [__O1__] [__O1__] ] 19[[`J T::rend()`] [__O1__] [__O1__] [__O1__] [__O1__] ] 20[[`J T::lower_bound(const key_type&)`] [__Olgn__] [__Olgn__] [__Olgn__] [__Olgn__] ] 21[[`J T::upper_bound(const key_type&)`] [__Olgn__] [__Olgn__] [__Olgn__] [__Olgn__] ] 22[[`pair<J,J> T::equal_range(const key_type&)`] [__Olgn__] [__Olgn__] [__Olgn__] [__Olgn__] ] 23] 24 25[table 26[[['*Iterator related*]] [] ] 27[[`` iterator T::begin() 28const_iterator T::begin()const``] [Returns an iterator to the first value of the container.] ] 29[[`` iterator T::end() 30const_iterator T::end()const``] [Returns an iterator to a position `end()` after the last value of the container.]] 31[[`` reverse_iterator T::rbegin() 32const_reverse_iterator T::rbegin()const``] [Returns a reverse iterator to the last value of the container.] ] 33[[`` reverse_iterator T::rend() 34const_reverse_iterator T::rend()const``] [Returns a reverse iterator to a position `rend()` before the first value of the container.]] 35[[`` iterator T::lower_bound(const key_type& k) 36const_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`. 37 `first` can be equal or greater than `key`, or it may overlap `key` for interval containers.]] 38[[`` iterator T::upper_bound(const key_type&) 39const_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`.]] 40[[`` 41 pair<iterator,iterator> T::equal_range(const key_type& key) 42pair<const_iterator,const_iterator> T::equal_range(const key_type& key)const 43`` 44] 45 [Returns a range `[first, past)` of iterators to all elements of the container 46 that compare neither less than nor greater than `key_type key`. 47 For element containers __icl_set__ and __icl_map__, `equal_range` 48 contains at most one iterator pointing the element equal to `key`, 49 if it exists. 50 51 For interval containers `equal_range` contains iterators to all 52 intervals that overlap interval `key`. 53 ]] 54] 55 56[/ 57Functions `begin`, `end`, `rbegin`, `rend` need ['*constant time*]. 58Complexity of `lower_bound`, `upper_bound` and `equal_range` are 59['*logarithmic*] in the `iterative_size` of the container. 60] 61 62['*See also . . .*] 63[table 64[] 65[[[link boost_icl.function_reference.element_iteration ['*Element iteration*]] ]] 66] 67['*Back to section . . .*] 68[table 69[] 70[[[link function_synopsis_table ['*Function Synopsis*]] ]] 71[[[link boost_icl.interface ['*Interface*]] ]] 72] 73 74[endsect][/ Iterator related] 75 76 77