AdaptedIterator< _Iterator, IteratorCategory, ValueType, DifferenceType, Pointer, Reference > Class Template Reference

A base class for all adapted iterators. More...

#include <AdaptedIterator.h>

Inheritance diagram for AdaptedIterator< _Iterator, IteratorCategory, ValueType, DifferenceType, Pointer, Reference >:
IndirectIterator< _Iterator > MemFunIterator< _Iterator, Pointee, Result, Const >

List of all members.

Public Types

typedef _Iterator Iterator
 The base iterator type.
typedef Base::iterator_category iterator_category
 The iterator category.
typedef Base::value_type value_type
 The type "pointed to" by the iterator.
typedef Base::difference_type difference_type
 Distance between iterators is represented as this type.
typedef Base::pointer pointer
 This type represents a pointer-to-value_type.
typedef Base::reference reference
 This type represents a reference-to-value_type.

Public Member Functions

Accessors.

const Iteratorbase () const
 Return the base iterator.

Protected Member Functions

Constructors etc.

The constructors are proctected because this class is only meant to be used as a base class.

 AdaptedIterator ()
 Default constructor.
 AdaptedIterator (const AdaptedIterator &x)
 Copy constructor.
AdaptedIteratoroperator= (const AdaptedIterator &other)
 Assignment operator.
 AdaptedIterator (const Iterator &i)
 Construct from an iterator.
AdaptedIteratoroperator= (const Iterator &i)
 Assignment from an iterator.
 ~AdaptedIterator ()
 Destructor.

Protected Attributes

Iterator _iterator
 The base iterator type.

Related Functions

(Note that these are not member functions.)



template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator== (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Return true if the base iterators are the same.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator!= (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Return true if the base iterators are not the same.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator< (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Compare the base iterators.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator> (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Compare the base iterators.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator<= (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Compare the base iterators.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
bool operator>= (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Compare the base iterators.
template<typename Iterator1 , typename IteratorCategory1 , typename ValueType1 , typename DifferenceType1 , typename Pointer1 , typename Reference1 , typename Iterator2 , typename IteratorCategory2 , typename ValueType2 , typename DifferenceType2 , typename Pointer2 , typename Reference2 >
AdaptedIterator< Iterator1,
IteratorCategory1, ValueType1,
DifferenceType1, Pointer1,
Reference1 >::difference_type 
operator- (const AdaptedIterator< Iterator1, IteratorCategory1, ValueType1, DifferenceType1, Pointer1, Reference1 > &x, const AdaptedIterator< Iterator2, IteratorCategory2, ValueType2, DifferenceType2, Pointer2, Reference2 > &y)
 Difference of pointers.

Detailed Description

template<typename _Iterator, typename IteratorCategory, typename ValueType, typename DifferenceType, typename Pointer, typename Reference>
class AdaptedIterator< _Iterator, IteratorCategory, ValueType, DifferenceType, Pointer, Reference >

A base class for all adapted iterators.


The documentation for this class was generated from the following file:
Generated on Thu Jun 30 02:14:51 2016 for Algorithms and Data Structures Package by  doxygen 1.6.3