Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::DualRandomIterator< IteratorA, IteratorB > Class Template Reference
Collaboration diagram for Alien::DualRandomIterator< IteratorA, IteratorB >:

Public Types

typedef boost::tuple< TypeA, TypeB > value_type
typedef ptrdiff_t difference_type
typedef value_type * pointer
typedef boost::tuple< TypeA &, TypeB & > reference
typedef std::random_access_iterator_tag iterator_category
typedef boost::tuple< const TypeA &, const TypeB & > const_reference

Public Member Functions

 DualRandomIterator (IteratorA i, IteratorB j)
DualRandomIterator & operator++ ()
DualRandomIterator & operator-- ()
DualRandomIterator operator++ (int)
DualRandomIterator operator-- (int)
bool operator== (const DualRandomIterator &rhs) const
bool operator!= (const DualRandomIterator &rhs) const
bool operator< (const DualRandomIterator &rhs) const
reference operator* ()
difference_type operator- (const DualRandomIterator &rhs) const
DualRandomIterator & operator+= (const difference_type n)
DualRandomIterator & operator-= (const difference_type n)
DualRandomIterator operator+ (const difference_type n) const
DualRandomIterator operator- (const difference_type n) const

Private Types

typedef TupleRandomIteratorTraits< IteratorA >::value_type TypeA
typedef TupleRandomIteratorTraits< IteratorB >::value_type TypeB

Private Attributes

IteratorA m_i
IteratorB m_j

Detailed Description

template<typename IteratorA, typename IteratorB>
class Alien::DualRandomIterator< IteratorA, IteratorB >

Definition at line 49 of file TupleRandomIterator.h.

Member Typedef Documentation

◆ const_reference

template<typename IteratorA, typename IteratorB>
typedef boost::tuple<const TypeA&, const TypeB&> Alien::DualRandomIterator< IteratorA, IteratorB >::const_reference

Definition at line 61 of file TupleRandomIterator.h.

◆ difference_type

template<typename IteratorA, typename IteratorB>
typedef ptrdiff_t Alien::DualRandomIterator< IteratorA, IteratorB >::difference_type

Definition at line 57 of file TupleRandomIterator.h.

◆ iterator_category

template<typename IteratorA, typename IteratorB>
typedef std::random_access_iterator_tag Alien::DualRandomIterator< IteratorA, IteratorB >::iterator_category

Definition at line 60 of file TupleRandomIterator.h.

◆ pointer

template<typename IteratorA, typename IteratorB>
typedef value_type* Alien::DualRandomIterator< IteratorA, IteratorB >::pointer

Definition at line 58 of file TupleRandomIterator.h.

◆ reference

template<typename IteratorA, typename IteratorB>
typedef boost::tuple<TypeA&, TypeB&> Alien::DualRandomIterator< IteratorA, IteratorB >::reference

Definition at line 59 of file TupleRandomIterator.h.

◆ TypeA

template<typename IteratorA, typename IteratorB>
typedef TupleRandomIteratorTraits<IteratorA>::value_type Alien::DualRandomIterator< IteratorA, IteratorB >::TypeA
private

Definition at line 52 of file TupleRandomIterator.h.

◆ TypeB

template<typename IteratorA, typename IteratorB>
typedef TupleRandomIteratorTraits<IteratorB>::value_type Alien::DualRandomIterator< IteratorA, IteratorB >::TypeB
private

Definition at line 53 of file TupleRandomIterator.h.

◆ value_type

template<typename IteratorA, typename IteratorB>
typedef boost::tuple<TypeA, TypeB> Alien::DualRandomIterator< IteratorA, IteratorB >::value_type

Definition at line 56 of file TupleRandomIterator.h.

Constructor & Destructor Documentation

◆ DualRandomIterator() [1/2]

template<typename IteratorA, typename IteratorB>
Alien::DualRandomIterator< IteratorA, IteratorB >::DualRandomIterator ( )
inline

Definition at line 64 of file TupleRandomIterator.h.

◆ DualRandomIterator() [2/2]

template<typename IteratorA, typename IteratorB>
Alien::DualRandomIterator< IteratorA, IteratorB >::DualRandomIterator ( IteratorA i,
IteratorB j )
inline

Definition at line 65 of file TupleRandomIterator.h.

Member Function Documentation

◆ operator!=()

template<typename IteratorA, typename IteratorB>
bool Alien::DualRandomIterator< IteratorA, IteratorB >::operator!= ( const DualRandomIterator< IteratorA, IteratorB > & rhs) const
inline

Definition at line 96 of file TupleRandomIterator.h.

◆ operator*()

template<typename IteratorA, typename IteratorB>
reference Alien::DualRandomIterator< IteratorA, IteratorB >::operator* ( )
inline

Definition at line 99 of file TupleRandomIterator.h.

◆ operator+()

template<typename IteratorA, typename IteratorB>
DualRandomIterator Alien::DualRandomIterator< IteratorA, IteratorB >::operator+ ( const difference_type n) const
inline

Definition at line 115 of file TupleRandomIterator.h.

◆ operator++() [1/2]

template<typename IteratorA, typename IteratorB>
DualRandomIterator & Alien::DualRandomIterator< IteratorA, IteratorB >::operator++ ( )
inline

Definition at line 70 of file TupleRandomIterator.h.

◆ operator++() [2/2]

template<typename IteratorA, typename IteratorB>
DualRandomIterator Alien::DualRandomIterator< IteratorA, IteratorB >::operator++ ( int )
inline

Definition at line 82 of file TupleRandomIterator.h.

◆ operator+=()

template<typename IteratorA, typename IteratorB>
DualRandomIterator & Alien::DualRandomIterator< IteratorA, IteratorB >::operator+= ( const difference_type n)
inline

Definition at line 103 of file TupleRandomIterator.h.

◆ operator-() [1/2]

template<typename IteratorA, typename IteratorB>
DualRandomIterator Alien::DualRandomIterator< IteratorA, IteratorB >::operator- ( const difference_type n) const
inline

Definition at line 119 of file TupleRandomIterator.h.

◆ operator-() [2/2]

template<typename IteratorA, typename IteratorB>
difference_type Alien::DualRandomIterator< IteratorA, IteratorB >::operator- ( const DualRandomIterator< IteratorA, IteratorB > & rhs) const
inline

Definition at line 101 of file TupleRandomIterator.h.

◆ operator--() [1/2]

template<typename IteratorA, typename IteratorB>
DualRandomIterator & Alien::DualRandomIterator< IteratorA, IteratorB >::operator-- ( )
inline

Definition at line 76 of file TupleRandomIterator.h.

◆ operator--() [2/2]

template<typename IteratorA, typename IteratorB>
DualRandomIterator Alien::DualRandomIterator< IteratorA, IteratorB >::operator-- ( int )
inline

Definition at line 88 of file TupleRandomIterator.h.

◆ operator-=()

template<typename IteratorA, typename IteratorB>
DualRandomIterator & Alien::DualRandomIterator< IteratorA, IteratorB >::operator-= ( const difference_type n)
inline

Definition at line 109 of file TupleRandomIterator.h.

◆ operator<()

template<typename IteratorA, typename IteratorB>
bool Alien::DualRandomIterator< IteratorA, IteratorB >::operator< ( const DualRandomIterator< IteratorA, IteratorB > & rhs) const
inline

Definition at line 97 of file TupleRandomIterator.h.

◆ operator==()

template<typename IteratorA, typename IteratorB>
bool Alien::DualRandomIterator< IteratorA, IteratorB >::operator== ( const DualRandomIterator< IteratorA, IteratorB > & rhs) const
inline

Definition at line 95 of file TupleRandomIterator.h.

Member Data Documentation

◆ m_i

template<typename IteratorA, typename IteratorB>
IteratorA Alien::DualRandomIterator< IteratorA, IteratorB >::m_i
private

Definition at line 125 of file TupleRandomIterator.h.

◆ m_j

template<typename IteratorA, typename IteratorB>
IteratorB Alien::DualRandomIterator< IteratorA, IteratorB >::m_j
private

Definition at line 126 of file TupleRandomIterator.h.


The documentation for this class was generated from the following file: