libMesh
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
libMesh::IntRange< T >::iterator Class Reference

#include <int_range.h>

Public Types

using iterator_category = std::input_iterator_tag
 
using value_type = T
 
using difference_type = T
 
using pointer = T
 
using reference = T &
 

Public Member Functions

 iterator (T i)
 
operator* () const
 
const iteratoroperator++ ()
 
iterator operator++ (int)
 
template<typename T2 >
void operator+= (T2 n)
 
template<typename T2 >
iterator operator+ (T2 n) const
 
bool operator== (const iterator &j) const
 
bool operator!= (const iterator &j) const
 

Private Attributes

_i
 

Detailed Description

template<typename T>
class libMesh::IntRange< T >::iterator

Definition at line 56 of file int_range.h.

Member Typedef Documentation

◆ difference_type

template<typename T >
using libMesh::IntRange< T >::iterator::difference_type = T

Definition at line 60 of file int_range.h.

◆ iterator_category

template<typename T >
using libMesh::IntRange< T >::iterator::iterator_category = std::input_iterator_tag

Definition at line 58 of file int_range.h.

◆ pointer

template<typename T >
using libMesh::IntRange< T >::iterator::pointer = T

Definition at line 61 of file int_range.h.

◆ reference

template<typename T >
using libMesh::IntRange< T >::iterator::reference = T&

Definition at line 62 of file int_range.h.

◆ value_type

template<typename T >
using libMesh::IntRange< T >::iterator::value_type = T

Definition at line 59 of file int_range.h.

Constructor & Destructor Documentation

◆ iterator()

template<typename T >
libMesh::IntRange< T >::iterator::iterator ( i)
inlineexplicit

Definition at line 64 of file int_range.h.

Member Function Documentation

◆ operator!=()

template<typename T >
bool libMesh::IntRange< T >::iterator::operator!= ( const iterator j) const
inline

Definition at line 100 of file int_range.h.

101 {
102 return !(*this == j);
103 }

◆ operator*()

template<typename T >
T libMesh::IntRange< T >::iterator::operator* ( ) const
inline

Definition at line 66 of file int_range.h.

66{ return _i; }

References libMesh::IntRange< T >::iterator::_i.

◆ operator+()

template<typename T >
template<typename T2 >
iterator libMesh::IntRange< T >::iterator::operator+ ( T2  n) const
inline

Definition at line 88 of file int_range.h.

89 {
90 iterator returnval(_i);
91 returnval += n;
92 return returnval;
93 }

References libMesh::IntRange< T >::iterator::_i.

◆ operator++() [1/2]

template<typename T >
const iterator & libMesh::IntRange< T >::iterator::operator++ ( )
inline

Definition at line 68 of file int_range.h.

69 {
70 ++_i;
71 return *this;
72 }

References libMesh::IntRange< T >::iterator::_i.

◆ operator++() [2/2]

template<typename T >
iterator libMesh::IntRange< T >::iterator::operator++ ( int  )
inline

Definition at line 74 of file int_range.h.

75 {
76 iterator returnval(*this);
77 ++_i;
78 return returnval;
79 }

References libMesh::IntRange< T >::iterator::_i.

◆ operator+=()

template<typename T >
template<typename T2 >
void libMesh::IntRange< T >::iterator::operator+= ( T2  n)
inline

Definition at line 82 of file int_range.h.

83 {
84 _i += cast_int<T>(n);
85 }

References libMesh::IntRange< T >::iterator::_i.

◆ operator==()

template<typename T >
bool libMesh::IntRange< T >::iterator::operator== ( const iterator j) const
inline

Definition at line 95 of file int_range.h.

96 {
97 return ( _i == j._i );
98 }

References libMesh::IntRange< T >::iterator::_i.

Member Data Documentation

◆ _i

template<typename T >
T libMesh::IntRange< T >::iterator::_i
private

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