utilmm::iterator_sequence< It1, It2 > Class Template Reference

#include <iterator_sequence.hh>

List of all members.

Public Member Functions

 iterator_sequence ()
 iterator_sequence (It1 first, It1 first_end, It2 second_begin, It2 second)
 iterator_sequence ()
 iterator_sequence (It1 first, It1 first_end, It2 second_begin, It2 second)

Private Types

typedef iterator_sequence< It1,
It2 > 
Self
typedef iterator_sequence< It1,
It2 > 
Self

Private Member Functions

void advance (typename Self::difference_type i)
void advance (typename Self::difference_type i)
void decrement ()
void decrement ()
Self::reference dereference () const
Self::reference dereference () const
Self::difference_type distance_to (Self x) const
Self::difference_type distance_to (Self x) const
bool equal (Self x) const
bool equal (Self x) const
void increment ()
void increment ()

Private Attributes

It1 m_first
It1 m_first_end
It2 m_second
It2 m_second_begin

Friends

class boost::iterator_core_access

Detailed Description

template<typename It1, typename It2>
class utilmm::iterator_sequence< It1, It2 >

The iterator_sequence template takes two iterator ranges and iterates in the two ranges as if they were a single sequence. The only constraint is that both iterator types have the same value_type.

Definition at line 14 of file install/include/utilmm/iterator_sequence.hh.


Member Typedef Documentation

template<typename It1 , typename It2 >
typedef iterator_sequence<It1, It2> utilmm::iterator_sequence< It1, It2 >::Self [private]

Definition at line 21 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
typedef iterator_sequence<It1, It2> utilmm::iterator_sequence< It1, It2 >::Self [private]

Definition at line 21 of file install/include/utilmm/iterator_sequence.hh.


Constructor & Destructor Documentation

template<typename It1 , typename It2 >
utilmm::iterator_sequence< It1, It2 >::iterator_sequence ( It1  first,
It1  first_end,
It2  second_begin,
It2  second 
) [inline]

Builds a new sequence Note that for an iterator sequence (fb, fe) + (sb, se),

  • the begin iterator is i_s(fb, fe, sb, sb)
  • the end iterator is i_s(fe, fe, se, se)
Parameters:
first the position in the first range
first_end the end of the first range
second_begin the beginning of the second range
second the position in the second range

Definition at line 36 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
utilmm::iterator_sequence< It1, It2 >::iterator_sequence (  )  [inline]

Definition at line 41 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
utilmm::iterator_sequence< It1, It2 >::iterator_sequence ( It1  first,
It1  first_end,
It2  second_begin,
It2  second 
) [inline]

Builds a new sequence Note that for an iterator sequence (fb, fe) + (sb, se),

  • the begin iterator is i_s(fb, fe, sb, sb)
  • the end iterator is i_s(fe, fe, se, se)
Parameters:
first the position in the first range
first_end the end of the first range
second_begin the beginning of the second range
second the position in the second range

Definition at line 36 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
utilmm::iterator_sequence< It1, It2 >::iterator_sequence (  )  [inline]

Definition at line 41 of file utilmm/iterator_sequence.hh.


Member Function Documentation

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::advance ( typename Self::difference_type  i  )  [inline, private]

Definition at line 72 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::advance ( typename Self::difference_type  i  )  [inline, private]

Definition at line 72 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::decrement (  )  [inline, private]

Definition at line 65 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::decrement (  )  [inline, private]

Definition at line 65 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
Self::reference utilmm::iterator_sequence< It1, It2 >::dereference (  )  const [inline, private]

Definition at line 49 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
Self::reference utilmm::iterator_sequence< It1, It2 >::dereference (  )  const [inline, private]

Definition at line 49 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
Self::difference_type utilmm::iterator_sequence< It1, It2 >::distance_to ( Self  x  )  const [inline, private]

Definition at line 98 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
Self::difference_type utilmm::iterator_sequence< It1, It2 >::distance_to ( Self  x  )  const [inline, private]

Definition at line 98 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
bool utilmm::iterator_sequence< It1, It2 >::equal ( Self  x  )  const [inline, private]

Definition at line 56 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
bool utilmm::iterator_sequence< It1, It2 >::equal ( Self  x  )  const [inline, private]

Definition at line 56 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::increment (  )  [inline, private]

Definition at line 58 of file utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
void utilmm::iterator_sequence< It1, It2 >::increment (  )  [inline, private]

Definition at line 58 of file install/include/utilmm/iterator_sequence.hh.


Friends And Related Function Documentation

template<typename It1 , typename It2 >
boost::iterator_core_access [friend]

Definition at line 44 of file install/include/utilmm/iterator_sequence.hh.


Member Data Documentation

template<typename It1 , typename It2 >
It1 utilmm::iterator_sequence< It1, It2 >::m_first [private]

Definition at line 46 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
It1 utilmm::iterator_sequence< It1, It2 >::m_first_end [private]

Definition at line 46 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
It2 utilmm::iterator_sequence< It1, It2 >::m_second [private]

Definition at line 47 of file install/include/utilmm/iterator_sequence.hh.

template<typename It1 , typename It2 >
It2 utilmm::iterator_sequence< It1, It2 >::m_second_begin [private]

Definition at line 47 of file install/include/utilmm/iterator_sequence.hh.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


utilmm
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Fri Jan 11 10:07:42 2013