Dune::ForwardIteratorFacade< T, V, R, D > Class Template Reference
[Iterator facades]

Base class for stl conformant forward iterators. More...

#include <dune/common/iteratorfacades.hh>

Inherited by Dune::SLListIterator< RemoteIndex, Allocator >, and Dune::SLListModifyIterator< RemoteIndex, Allocator >.

List of all members.

Public Types

typedef T DerivedType
 The type of derived iterator.
typedef V Value
 The type of value accessed through the iterator.
typedef V * Pointer
 The pointer to the Value.
typedef D DifferenceType
 The type of the difference between two positions.
typedef R Reference
 The type of the reference to the values accessed.

Public Member Functions

Reference operator* () const
 Dereferencing operator.
Pointer operator-> () const
DerivedTypeoperator++ ()
 Preincrement operator.
DerivedType operator++ (int)
 Postincrement operator.

Detailed Description

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
class Dune::ForwardIteratorFacade< T, V, R, D >

Base class for stl conformant forward iterators.

Template Parameters:
T The derived class
V The value type
R The reference type
D The type for differences between two iterators

Member Typedef Documentation

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
typedef T Dune::ForwardIteratorFacade< T, V, R, D >::DerivedType

The type of derived iterator.

The iterator has to define following functions have to be present:

 // Access the value referred to.
 Reference dereference() const;

 // Compare for equality with iterator j
 bool equals(j);

 // position the iterator at the next element.
 void increment()

 // check for equality with other iterator
 bool equals(other)

For an elaborate explanation see the STL Documentation!

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
typedef D Dune::ForwardIteratorFacade< T, V, R, D >::DifferenceType

The type of the difference between two positions.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
typedef V* Dune::ForwardIteratorFacade< T, V, R, D >::Pointer

The pointer to the Value.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
typedef R Dune::ForwardIteratorFacade< T, V, R, D >::Reference

The type of the reference to the values accessed.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
typedef V Dune::ForwardIteratorFacade< T, V, R, D >::Value

The type of value accessed through the iterator.


Member Function Documentation

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
Reference Dune::ForwardIteratorFacade< T, V, R, D >::operator* (  )  const [inline]

Dereferencing operator.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
DerivedType Dune::ForwardIteratorFacade< T, V, R, D >::operator++ ( int   )  [inline]

Postincrement operator.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
DerivedType& Dune::ForwardIteratorFacade< T, V, R, D >::operator++ (  )  [inline]

Preincrement operator.

template<class T, class V, class R = V&, class D = std::ptrdiff_t>
Pointer Dune::ForwardIteratorFacade< T, V, R, D >::operator-> (  )  const [inline]

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

Generated on 25 Mar 2018 for dune-common by  doxygen 1.6.1