Reference documentation for deal.II version 8.5.1
Public Types | Public Member Functions | Private Attributes | List of all members
IteratorRange< Iterator >::IteratorOverIterators Class Reference

#include <deal.II/base/iterator_range.h>

Inherits iterator< std::forward_iterator_tag, Iterator, Iterator::difference_type >.

Public Types

typedef Iterator BaseIterator
 

Public Member Functions

 IteratorOverIterators (const BaseIterator &iterator)
 
BaseIterator operator* () const
 
const BaseIteratoroperator-> () const
 
IteratorOverIteratorsoperator++ ()
 
IteratorOverIterators operator++ (int)
 
bool operator!= (const IteratorOverIterators &i_o_i)
 

Private Attributes

BaseIterator element_of_iterator_collection
 

Detailed Description

template<typename Iterator>
class IteratorRange< Iterator >::IteratorOverIterators

A class that implements the semantics of iterators over iterators as discussed in the design sections of the IteratorRange class.

Definition at line 124 of file iterator_range.h.

Member Typedef Documentation

◆ BaseIterator

template<typename Iterator>
typedef Iterator IteratorRange< Iterator >::IteratorOverIterators::BaseIterator

Typedef the elements of the collection to give them a name that is more distinct.

Definition at line 132 of file iterator_range.h.

Constructor & Destructor Documentation

◆ IteratorOverIterators()

template<typename Iterator >
IteratorRange< Iterator >::IteratorOverIterators::IteratorOverIterators ( const BaseIterator iterator)
inline

Constructor. Initialize this iterator-over-iterator in such a way that it points to the given argument.

Parameters
iteratorAn iterator to which this object is supposed to point.

Definition at line 231 of file iterator_range.h.

Member Function Documentation

◆ operator*()

template<typename Iterator >
IteratorRange< Iterator >::IteratorOverIterators::BaseIterator IteratorRange< Iterator >::IteratorOverIterators::operator* ( ) const
inline

Dereferencing operator.

Returns
The iterator within the collection currently pointed to.

Definition at line 241 of file iterator_range.h.

◆ operator->()

template<typename Iterator >
const IteratorRange< Iterator >::IteratorOverIterators::BaseIterator * IteratorRange< Iterator >::IteratorOverIterators::operator-> ( ) const
inline

Dereferencing operator.

Returns
The iterator within the collection currently pointed to.

Definition at line 251 of file iterator_range.h.

◆ operator++() [1/2]

template<typename Iterator >
IteratorRange< Iterator >::IteratorOverIterators & IteratorRange< Iterator >::IteratorOverIterators::operator++ ( )
inline

Prefix increment operator. Move the current iterator to the next element of the collection and return the new value.

Definition at line 261 of file iterator_range.h.

◆ operator++() [2/2]

template<typename Iterator >
IteratorRange< Iterator >::IteratorOverIterators IteratorRange< Iterator >::IteratorOverIterators::operator++ ( int  )
inline

Postfix increment operator. Move the current iterator to the next element of the collection, but return the previous value of the iterator.

Definition at line 272 of file iterator_range.h.

◆ operator!=()

template<typename Iterator >
bool IteratorRange< Iterator >::IteratorOverIterators::operator!= ( const IteratorOverIterators i_o_i)
inline

Comparison operator

Parameters
i_o_iAnother iterator over iterators.
Returns
Returns whether the current iterator points to a different object than the iterator represented by the argument.

Definition at line 284 of file iterator_range.h.

Member Data Documentation

◆ element_of_iterator_collection

template<typename Iterator>
BaseIterator IteratorRange< Iterator >::IteratorOverIterators::element_of_iterator_collection
private

The object this iterator currently points to.

Definition at line 179 of file iterator_range.h.


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