dune-istl 2.12-git
Loading...
Searching...
No Matches
Dune::Experimental::MatrixView< B, P >::ConstIterator Class Reference

Const random-access iterator over matrix rows. More...

#include <dune/istl/experimental/matrixview.hh>

Inheritance diagram for Dune::Experimental::MatrixView< B, P >::ConstIterator:
Inheritance graph

Public Types

using reference = typename Facade::reference
 
typedef C iterator_category
 
typedef typename std::remove_const< V >::type value_type
 
typedef P pointer
 
typedef D difference_type
 
typedef value_type Value
 
typedef reference Reference
 
typedef pointer Pointer
 
typedef difference_type DifferenceType
 

Public Member Functions

 ConstIterator () noexcept=default
 Default constructor creating a singular iterator.
 
constexpr ConstIterator (const Iterator &it) noexcept(std::is_nothrow_copy_constructible_v< Iterator >)
 Construct const iterator from mutable iterator.
 
constexpr ConstIterator & operator= (const Iterator &other) noexcept(std::is_nothrow_copy_assignable_v< Iterator >)
 Assign from mutable iterator.
 
constexpr reference operator* () const
 Dereference to the const row view at the current row index.
 
constexpr size_type index () const
 Return the current logical row index.
 
constexpr pointer operator-> () const
 
constexpr decltype(auto) operator++ ()
 
constexpr DerivedIterator operator++ (int)
 
constexpr decltype(auto) operator-- ()
 
constexpr DerivedIterator operator-- (int)
 
constexpr reference operator[] (difference_type n) const
 
constexpr decltype(auto) operator+= (difference_type n)
 
constexpr DerivedIterator operator+ (difference_type n) const
 
constexpr DerivedIterator & operator-= (difference_type n)
 
constexpr DerivedIterator operator- (difference_type n) const
 

Protected Types

typedef It DerivedIterator
 

Protected Member Functions

constexpr const DerivedIterator & derived () const
 
constexpr DerivedIterator & derived ()
 

Detailed Description

template<std::random_access_iterator B, class P>
class Dune::Experimental::MatrixView< B, P >::ConstIterator

Const random-access iterator over matrix rows.

Dereferencing yields a const_row_type view for the current row. The iterator can be constructed or assigned from Iterator.

Member Typedef Documentation

◆ reference

template<std::random_access_iterator B, class P >
using Dune::Experimental::MatrixView< B, P >::ConstIterator::reference = typename Facade::reference

Constructor & Destructor Documentation

◆ ConstIterator() [1/2]

template<std::random_access_iterator B, class P >
Dune::Experimental::MatrixView< B, P >::ConstIterator::ConstIterator ( )
defaultnoexcept

Default constructor creating a singular iterator.

◆ ConstIterator() [2/2]

template<std::random_access_iterator B, class P >
constexpr Dune::Experimental::MatrixView< B, P >::ConstIterator::ConstIterator ( const Iterator &  it)
inlineconstexprnoexcept

Construct const iterator from mutable iterator.

Member Function Documentation

◆ index()

template<std::random_access_iterator B, class P >
constexpr size_type Dune::Experimental::MatrixView< B, P >::ConstIterator::index ( ) const
inlineconstexpr

Return the current logical row index.

◆ operator*()

template<std::random_access_iterator B, class P >
constexpr reference Dune::Experimental::MatrixView< B, P >::ConstIterator::operator* ( ) const
inlineconstexpr

Dereference to the const row view at the current row index.

◆ operator=()

template<std::random_access_iterator B, class P >
constexpr ConstIterator & Dune::Experimental::MatrixView< B, P >::ConstIterator::operator= ( const Iterator &  other)
inlineconstexprnoexcept

Assign from mutable iterator.


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