iterator_range class More...
#include <range_fwd.hpp>


Public Types | |
| typedef iterator_range< IteratorT > | type | 
| typedef BOOST_DEDUCED_TYPENAME  safe_bool_t::unspecified_bool_type  | unspecified_bool_type | 
| typedef BOOST_DEDUCED_TYPENAME  iterator_value< IteratorT > ::type  | value_type | 
| typedef BOOST_DEDUCED_TYPENAME  iterator_difference< IteratorT > ::type  | difference_type | 
| typedef std::size_t | size_type | 
| typedef BOOST_DEDUCED_TYPENAME  iterator_reference< IteratorT > ::type  | reference | 
| typedef IteratorT | const_iterator | 
| const_iterator type  More... | |
| typedef IteratorT | iterator | 
| iterator type  More... | |
Public Member Functions | |
| iterator_range () | |
| template<class Iterator > | |
| iterator_range (Iterator first, Iterator last) | |
| template<class SinglePassRange > | |
| iterator_range (const SinglePassRange &r, BOOST_DEDUCED_TYPENAME::boost::enable_if< is_compatible_range< const SinglePassRange > >::type *=0) | |
| template<class SinglePassRange > | |
| iterator_range (SinglePassRange &r, BOOST_DEDUCED_TYPENAME::boost::enable_if< is_compatible_range< SinglePassRange > >::type *=0) | |
| template<class SinglePassRange > | |
| iterator_range (const SinglePassRange &r, iterator_range_detail::const_range_tag) | |
| template<class SinglePassRange > | |
| iterator_range (SinglePassRange &r, iterator_range_detail::range_tag) | |
| template<class Iterator > | |
| iterator_range & | operator= (const iterator_range< Iterator > &other) | 
| template<class Iterator > | |
| iterator_range & | operator= (iterator_range< Iterator > &other) | 
| template<class SinglePassRange > | |
| iterator_range & | operator= (SinglePassRange &r) | 
| template<class SinglePassRange > | |
| iterator_range & | operator= (const SinglePassRange &r) | 
| iterator_range & | advance_begin (BOOST_DEDUCED_TYPENAME base_type::difference_type n) | 
| iterator_range & | advance_end (BOOST_DEDUCED_TYPENAME base_type::difference_type n) | 
| IteratorT | begin () const | 
| IteratorT | end () const | 
| bool | empty () const | 
| operator unspecified_bool_type () const | |
| bool | operator! () const | 
| bool | equal (const iterator_range_base &r) const | 
| reference | front () const | 
| void | drop_front () | 
| void | drop_front (difference_type n) | 
| void | pop_front () | 
Protected Types | |
| typedef  iterator_range_detail::iterator_range_impl < IteratorT >  | impl | 
| typedef iterator_range | iterator_range_ | 
Protected Member Functions | |
| void | assign (Iterator first, Iterator last) | 
| void | assign (const SinglePassRange &r) | 
| void | assign (SinglePassRange &r) | 
Protected Attributes | |
| IteratorT | m_Begin | 
| IteratorT | m_End | 
iterator_range class
An iterator_range delimits a range in a sequence by beginning and ending iterators. An iterator_range can be passed to an algorithm which requires a sequence as an input. For example, the toupper() function may be used most frequently on strings, but can also be used on iterator_ranges:
Many algorithms working with sequences take a pair of iterators, delimiting a working range, as an arguments. The iterator_range class is an encapsulation of a range identified by a pair of iterators. It provides a collection interface, so it is possible to pass an instance to an algorithm requiring a collection as an input. 
      
  | 
  inherited | 
const_iterator type
There is no distinction between const_iterator and iterator. These typedefs are provides to fulfill container interface
      
  | 
  inherited | 
      
  | 
  protected | 
      
  | 
  inherited | 
iterator type
      
  | 
  protected | 
      
  | 
  inherited | 
      
  | 
  inherited | 
| typedef iterator_range<IteratorT> boost::iterator_range< IteratorT >::type | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inlineprotectedinherited | 
      
  | 
  inlineprotectedinherited | 
      
  | 
  inlineprotectedinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inlineinherited | 
      
  | 
  protectedinherited | 
      
  | 
  protectedinherited |