LocalGuidance
A library that generates velocity references to follow a path.
std_utils::EnumArray< Enum_, Item_, Size_ > Class Template Reference

#include <EnumArray.hpp>

Inheritance diagram for std_utils::EnumArray< Enum_, Item_, Size_ >:
Inheritance graph

Public Types

using Item = Item_
 
using Enum = Enum_
 

Public Member Functions

constexpr EnumArray () noexcept
 
constexpr EnumArray (std::array< Item, Size_ > a) noexcept
 
 EnumArray (Item a) noexcept
 
Itemoperator[] (Enum e) noexcept
 Provide at, [] implementations for enums. More...
 
constexpr const Itemoperator[] (Enum e) const noexcept
 
Itemat (Enum e)
 
constexpr const Itemat (Enum e) const
 
template<Enum_ E_>
Itemget () noexcept
 Provide get function, this can be used to assure compile time access in C++11. More...
 
template<Enum_ E_>
constexpr const Itemget () const noexcept
 

Member Typedef Documentation

template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
using std_utils::EnumArray< Enum_, Item_, Size_ >::Enum = Enum_
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
using std_utils::EnumArray< Enum_, Item_, Size_ >::Item = Item_

Constructor & Destructor Documentation

template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
constexpr std_utils::EnumArray< Enum_, Item_, Size_ >::EnumArray ( )
inlinenoexcept
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
constexpr std_utils::EnumArray< Enum_, Item_, Size_ >::EnumArray ( std::array< Item, Size_ >  a)
inlineexplicitnoexcept
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
std_utils::EnumArray< Enum_, Item_, Size_ >::EnumArray ( Item  a)
inlineexplicitnoexcept

Member Function Documentation

template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
Item& std_utils::EnumArray< Enum_, Item_, Size_ >::at ( Enum  e)
inline
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
constexpr const Item& std_utils::EnumArray< Enum_, Item_, Size_ >::at ( Enum  e) const
inline
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
template<Enum_ E_>
Item& std_utils::EnumArray< Enum_, Item_, Size_ >::get ( )
inlinenoexcept

Provide get function, this can be used to assure compile time access in C++11.

template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
template<Enum_ E_>
constexpr const Item& std_utils::EnumArray< Enum_, Item_, Size_ >::get ( ) const
inlinenoexcept
template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
Item& std_utils::EnumArray< Enum_, Item_, Size_ >::operator[] ( Enum  e)
inlinenoexcept

Provide at, [] implementations for enums.

template<typename Enum_, typename Item_, int Size_ = static_cast<int>(Enum_::SIZE)>
constexpr const Item& std_utils::EnumArray< Enum_, Item_, Size_ >::operator[] ( Enum  e) const
inlinenoexcept

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