boca::EnumIterator< Enum_ > Class Template Reference

Enables the use of strongly typed enumerators as iterators. More...

#include <EnumIterator.hh>

Inheritance diagram for boca::EnumIterator< Enum_ >:
[legend]
Collaboration diagram for boca::EnumIterator< Enum_ >:
[legend]

Public Member Functions

Constructor
constexpr EnumIterator ()
 Default constructor. More...
 
constexpr EnumIterator (Enum_ value)
 Constructor from enum. More...
 
Setter
void Set (Enum_ value)
 Set enum. More...
 
Operators
constexpr bool operator< (EnumIterator const &enum_iterator) const
 Less than comparison. More...
 
constexpr bool operator== (EnumIterator const &enum_iterator) const
 equality comparison More...
 
EnumIteratoroperator+= (size_type size)
 increment by integer More...
 
EnumIteratoroperator-= (size_type size)
 decrement by integer More...
 
EnumIteratoroperator++ ()
 increment More...
 
EnumIteratoroperator-- ()
 decrement More...
 
constexpr reference operator* () const
 substruction More...
 

Friends

constexpr friend void swap (EnumIterator const &lhs, EnumIterator const &rhs)
 

Detailed Description

template<typename Enum_>
class boca::EnumIterator< Enum_ >

Enables the use of strongly typed enumerators as iterators.

Constructor & Destructor Documentation

template<typename Enum_>
constexpr boca::EnumIterator< Enum_ >::EnumIterator ( )
inline

Default constructor.

template<typename Enum_>
constexpr boca::EnumIterator< Enum_ >::EnumIterator ( Enum_  value)
inlineexplicit

Constructor from enum.

Member Function Documentation

template<typename Enum_>
constexpr reference boca::EnumIterator< Enum_ >::operator* ( ) const
inline

substruction

reference

template<typename Enum_>
EnumIterator& boca::EnumIterator< Enum_ >::operator++ ( )
inline

increment

template<typename Enum_>
EnumIterator& boca::EnumIterator< Enum_ >::operator+= ( size_type  size)
inline

increment by integer

template<typename Enum_>
EnumIterator& boca::EnumIterator< Enum_ >::operator-- ( )
inline

decrement

template<typename Enum_>
EnumIterator& boca::EnumIterator< Enum_ >::operator-= ( size_type  size)
inline

decrement by integer

template<typename Enum_>
constexpr bool boca::EnumIterator< Enum_ >::operator< ( EnumIterator< Enum_ > const &  enum_iterator) const
inline

Less than comparison.

template<typename Enum_>
constexpr bool boca::EnumIterator< Enum_ >::operator== ( EnumIterator< Enum_ > const &  enum_iterator) const
inline

equality comparison

template<typename Enum_>
void boca::EnumIterator< Enum_ >::Set ( Enum_  value)
inline

Set enum.

Friends And Related Function Documentation

template<typename Enum_>
constexpr friend void swap ( EnumIterator< Enum_ > const &  lhs,
EnumIterator< Enum_ > const &  rhs 
)
friend

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