KiCad PCB EDA Suite
Loading...
Searching...
No Matches
ENUM_ITERATOR< T, beginVal, endVal > Class Template Reference

#include <enum_vector.h>

Public Types

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

Public Member Functions

 ENUM_ITERATOR (const T &f)
 
 ENUM_ITERATOR ()
 
ENUM_ITERATOR operator++ ()
 
T operator* ()
 
ENUM_ITERATOR begin ()
 
ENUM_ITERATOR end ()
 
bool operator== (const ENUM_ITERATOR &aIt) const
 
bool operator!= (const ENUM_ITERATOR &aIt) const
 

Private Types

typedef std::underlying_type< T >::type val_t
 

Private Attributes

int val
 

Detailed Description

template<typename T, T beginVal, T endVal>
class ENUM_ITERATOR< T, beginVal, endVal >

Definition at line 74 of file enum_vector.h.

Member Typedef Documentation

◆ difference_type

template<typename T, T beginVal, T endVal>
using ENUM_ITERATOR< T, beginVal, endVal >::difference_type = std::ptrdiff_t

Definition at line 81 of file enum_vector.h.

◆ iterator_category

template<typename T, T beginVal, T endVal>
using ENUM_ITERATOR< T, beginVal, endVal >::iterator_category = std::input_iterator_tag

Definition at line 84 of file enum_vector.h.

◆ pointer

template<typename T, T beginVal, T endVal>
using ENUM_ITERATOR< T, beginVal, endVal >::pointer = T*

Definition at line 82 of file enum_vector.h.

◆ reference

template<typename T, T beginVal, T endVal>
using ENUM_ITERATOR< T, beginVal, endVal >::reference = T&

Definition at line 83 of file enum_vector.h.

◆ val_t

template<typename T, T beginVal, T endVal>
typedef std::underlying_type<T>::type ENUM_ITERATOR< T, beginVal, endVal >::val_t
private

Definition at line 76 of file enum_vector.h.

◆ value_type

template<typename T, T beginVal, T endVal>
using ENUM_ITERATOR< T, beginVal, endVal >::value_type = T

Definition at line 80 of file enum_vector.h.

Constructor & Destructor Documentation

◆ ENUM_ITERATOR() [1/2]

template<typename T, T beginVal, T endVal>
ENUM_ITERATOR< T, beginVal, endVal >::ENUM_ITERATOR ( const T & f)
inline

Definition at line 86 of file enum_vector.h.

References T, and val.

Referenced by begin(), end(), operator!=(), operator++(), and operator==().

◆ ENUM_ITERATOR() [2/2]

template<typename T, T beginVal, T endVal>
ENUM_ITERATOR< T, beginVal, endVal >::ENUM_ITERATOR ( )
inline

Definition at line 87 of file enum_vector.h.

References val.

Referenced by end().

Member Function Documentation

◆ begin()

template<typename T, T beginVal, T endVal>
ENUM_ITERATOR ENUM_ITERATOR< T, beginVal, endVal >::begin ( )
inline

Definition at line 95 of file enum_vector.h.

References ENUM_ITERATOR().

◆ end()

template<typename T, T beginVal, T endVal>
ENUM_ITERATOR ENUM_ITERATOR< T, beginVal, endVal >::end ( )
inline

Definition at line 96 of file enum_vector.h.

References ENUM_ITERATOR(), and ENUM_ITERATOR().

◆ operator!=()

template<typename T, T beginVal, T endVal>
bool ENUM_ITERATOR< T, beginVal, endVal >::operator!= ( const ENUM_ITERATOR< T, beginVal, endVal > & aIt) const
inline

Definition at line 98 of file enum_vector.h.

References ENUM_ITERATOR(), and val.

◆ operator*()

template<typename T, T beginVal, T endVal>
T ENUM_ITERATOR< T, beginVal, endVal >::operator* ( )
inline

Definition at line 94 of file enum_vector.h.

References T, and val.

◆ operator++()

template<typename T, T beginVal, T endVal>
ENUM_ITERATOR ENUM_ITERATOR< T, beginVal, endVal >::operator++ ( )
inline

Definition at line 88 of file enum_vector.h.

References ENUM_ITERATOR(), and val.

◆ operator==()

template<typename T, T beginVal, T endVal>
bool ENUM_ITERATOR< T, beginVal, endVal >::operator== ( const ENUM_ITERATOR< T, beginVal, endVal > & aIt) const
inline

Definition at line 97 of file enum_vector.h.

References ENUM_ITERATOR(), and val.

Member Data Documentation

◆ val

template<typename T, T beginVal, T endVal>
int ENUM_ITERATOR< T, beginVal, endVal >::val
private

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