ant
A2 ant: class-based analysis framework
ant::Range_t< T >::iterator Struct Reference

#include <interval_algo.h>

+ Collaboration diagram for ant::Range_t< T >::iterator:

Public Types

using value_type = T
 
using iterator_category = std::bidirectional_iterator_tag
 
using difference_type = std::ptrdiff_t
 
using pointer = const T *
 
using reference = const T
 

Public Member Functions

bool operator== (const iterator &other) const noexcept
 
bool operator!= (const iterator &other) const noexcept
 
iteratoroperator++ () noexcept
 
iteratoroperator-- () noexcept
 
value_type value () const noexcept
 
unsigned position () const noexcept
 
reference operator* () const noexcept
 
 iterator (const Range_t &range, const unsigned pos=0)
 

Protected Attributes

const Range_tm_range
 
unsigned m_p = 0
 

Member Typedef Documentation

◆ difference_type

template<typename T >
using ant::Range_t< T >::iterator::difference_type = std::ptrdiff_t

◆ iterator_category

template<typename T >
using ant::Range_t< T >::iterator::iterator_category = std::bidirectional_iterator_tag

◆ pointer

template<typename T >
using ant::Range_t< T >::iterator::pointer = const T*

◆ reference

template<typename T >
using ant::Range_t< T >::iterator::reference = const T

◆ value_type

template<typename T >
using ant::Range_t< T >::iterator::value_type = T

Constructor & Destructor Documentation

◆ iterator()

template<typename T >
ant::Range_t< T >::iterator::iterator ( const Range_t range,
const unsigned  pos = 0 
)
inline

Member Function Documentation

◆ operator!=()

template<typename T >
bool ant::Range_t< T >::iterator::operator!= ( const iterator other) const
inlinenoexcept

◆ operator*()

template<typename T >
reference ant::Range_t< T >::iterator::operator* ( ) const
inlinenoexcept

◆ operator++()

template<typename T >
iterator& ant::Range_t< T >::iterator::operator++ ( )
inlinenoexcept

◆ operator--()

template<typename T >
iterator& ant::Range_t< T >::iterator::operator-- ( )
inlinenoexcept

◆ operator==()

template<typename T >
bool ant::Range_t< T >::iterator::operator== ( const iterator other) const
inlinenoexcept

◆ position()

template<typename T >
unsigned ant::Range_t< T >::iterator::position ( ) const
inlinenoexcept

◆ value()

template<typename T >
value_type ant::Range_t< T >::iterator::value ( ) const
inlinenoexcept

Member Data Documentation

◆ m_p

template<typename T >
unsigned ant::Range_t< T >::iterator::m_p = 0
protected

◆ m_range

template<typename T >
const Range_t& ant::Range_t< T >::iterator::m_range
protected

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