LBANN  0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
lbann::enum_iterator< C, beginVal, endVal > Class Template Reference

Create an iterator that goes over a contiguous (unit-step) enum class. More...

#include <enum_iterator.hpp>

Public Member Functions

 enum_iterator (const C &f)
 
 enum_iterator ()
 
enum_iterator operator++ ()
 
operator* ()
 
enum_iterator begin ()
 
enum_iterator end ()
 
bool operator!= (const enum_iterator &i)
 

Private Types

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

Private Attributes

int val
 

Detailed Description

template<typename C, C beginVal, C endVal>
class lbann::enum_iterator< C, beginVal, endVal >

Create an iterator that goes over a contiguous (unit-step) enum class.

Definition at line 37 of file enum_iterator.hpp.

Member Typedef Documentation

◆ val_t

template<typename C , C beginVal, C endVal>
typedef std::underlying_type<C>::type lbann::enum_iterator< C, beginVal, endVal >::val_t
private

Definition at line 39 of file enum_iterator.hpp.

Constructor & Destructor Documentation

◆ enum_iterator() [1/2]

template<typename C , C beginVal, C endVal>
lbann::enum_iterator< C, beginVal, endVal >::enum_iterator ( const C &  f)
inline

Definition at line 43 of file enum_iterator.hpp.

◆ enum_iterator() [2/2]

template<typename C , C beginVal, C endVal>
lbann::enum_iterator< C, beginVal, endVal >::enum_iterator ( )
inline

Definition at line 44 of file enum_iterator.hpp.

Here is the caller graph for this function:

Member Function Documentation

◆ begin()

template<typename C , C beginVal, C endVal>
enum_iterator lbann::enum_iterator< C, beginVal, endVal >::begin ( )
inline

Definition at line 51 of file enum_iterator.hpp.

◆ end()

template<typename C , C beginVal, C endVal>
enum_iterator lbann::enum_iterator< C, beginVal, endVal >::end ( )
inline

Definition at line 52 of file enum_iterator.hpp.

Here is the call graph for this function:

◆ operator!=()

template<typename C , C beginVal, C endVal>
bool lbann::enum_iterator< C, beginVal, endVal >::operator!= ( const enum_iterator< C, beginVal, endVal > &  i)
inline

Definition at line 57 of file enum_iterator.hpp.

◆ operator*()

template<typename C , C beginVal, C endVal>
C lbann::enum_iterator< C, beginVal, endVal >::operator* ( )
inline

Definition at line 50 of file enum_iterator.hpp.

◆ operator++()

template<typename C , C beginVal, C endVal>
enum_iterator lbann::enum_iterator< C, beginVal, endVal >::operator++ ( )
inline

Definition at line 45 of file enum_iterator.hpp.

Member Data Documentation

◆ val

template<typename C , C beginVal, C endVal>
int lbann::enum_iterator< C, beginVal, endVal >::val
private

Definition at line 40 of file enum_iterator.hpp.


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