dnai::utils::vector< Value, Size > Class Template Reference

#include <cx_stringlist.h>

Collaboration diagram for dnai::utils::vector< Value, Size >:
Collaboration graph

Public Types

using iterator = typename storage_t::iterator
 
using const_iterator = typename storage_t::const_iterator
 
using value_type = Value
 
using reference = typename storage_t::reference
 
using const_reference = typename storage_t::const_reference
 

Public Member Functions

template<typename Itr >
constexpr vector (Itr begin, const Itr &end)
 
constexpr vector (std::initializer_list< Value > init)
 
constexpr vector ()=default
 
constexpr auto begin () const
 
constexpr auto begin ()
 
constexpr auto end () const
 
constexpr auto end ()
 
constexpr auto cbegin () const
 
constexpr auto cend () const
 
constexpr const Value & operator[] (const std::size_t t_pos) const
 
constexpr Value & operator[] (const std::size_t t_pos)
 
constexpr Value & at (const std::size_t t_pos)
 
constexpr const Value & at (const std::size_t t_pos) const
 
constexpr Value & push_back (Value t_v)
 
constexpr const Value & back () const
 
constexpr Value & back ()
 
constexpr auto capacity () const
 
constexpr auto size () const
 
constexpr auto empty () const
 
constexpr void clear ()
 
constexpr const Value * data () const
 

Private Types

using storage_t = std::array< Value, Size >
 

Private Attributes

storage_t m_data {}
 
std::size_t m_size { 0 }
 

Member Typedef Documentation

template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::const_iterator = typename storage_t::const_iterator
template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::const_reference = typename storage_t::const_reference
template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::iterator = typename storage_t::iterator
template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::reference = typename storage_t::reference
template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::storage_t = std::array<Value, Size>
private
template<typename Value, std::size_t Size = 5>
using dnai::utils::vector< Value, Size >::value_type = Value

Constructor & Destructor Documentation

template<typename Value, std::size_t Size = 5>
template<typename Itr >
constexpr dnai::utils::vector< Value, Size >::vector ( Itr  begin,
const Itr &  end 
)
inline
template<typename Value, std::size_t Size = 5>
constexpr dnai::utils::vector< Value, Size >::vector ( std::initializer_list< Value >  init)
inline
template<typename Value, std::size_t Size = 5>
constexpr dnai::utils::vector< Value, Size >::vector ( )
default

Member Function Documentation

template<typename Value, std::size_t Size = 5>
constexpr Value& dnai::utils::vector< Value, Size >::at ( const std::size_t  t_pos)
inline
template<typename Value, std::size_t Size = 5>
constexpr const Value& dnai::utils::vector< Value, Size >::at ( const std::size_t  t_pos) const
inline
template<typename Value, std::size_t Size = 5>
constexpr const Value& dnai::utils::vector< Value, Size >::back ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr Value& dnai::utils::vector< Value, Size >::back ( )
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::begin ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::begin ( )
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::capacity ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::cbegin ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::cend ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr void dnai::utils::vector< Value, Size >::clear ( )
inline
template<typename Value, std::size_t Size = 5>
constexpr const Value* dnai::utils::vector< Value, Size >::data ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::empty ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::end ( ) const
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::end ( )
inline
template<typename Value, std::size_t Size = 5>
constexpr const Value& dnai::utils::vector< Value, Size >::operator[] ( const std::size_t  t_pos) const
inline
template<typename Value, std::size_t Size = 5>
constexpr Value& dnai::utils::vector< Value, Size >::operator[] ( const std::size_t  t_pos)
inline
template<typename Value, std::size_t Size = 5>
constexpr Value& dnai::utils::vector< Value, Size >::push_back ( Value  t_v)
inline
template<typename Value, std::size_t Size = 5>
constexpr auto dnai::utils::vector< Value, Size >::size ( ) const
inline

Member Data Documentation

template<typename Value, std::size_t Size = 5>
storage_t dnai::utils::vector< Value, Size >::m_data {}
private
template<typename Value, std::size_t Size = 5>
std::size_t dnai::utils::vector< Value, Size >::m_size { 0 }
private

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