Iros
 
Loading...
Searching...
No Matches
di::container::StaticRing< T, SizeConstant > Class Template Reference

#include <di/container/ring/static_ring.h>

Inheritance diagram for di::container::StaticRing< T, SizeConstant >:
[legend]

Public Types

using Value = T
 
using ConstValue = T const
 

Public Member Functions

constexpr StaticRing ()
 
 StaticRing (StaticRing const &)=default
 
 StaticRing (StaticRing &&)=default
 
auto operator= (StaticRing const &) -> StaticRing &=default
 
auto operator= (StaticRing &&) -> StaticRing &=default
 
constexpr auto span () -> Span< T >
 
constexpr auto span () const -> Span< T const >
 
constexpr auto capacity () const -> usize
 
constexpr auto max_size () const -> usize
 
constexpr auto reserve_from_nothing (usize n) -> Expected< void, NoCapacityError >
 
constexpr void assume_size (usize size)
 
constexpr auto grow_capacity (usize min_capacity) const -> usize
 
constexpr auto head () const -> usize
 
constexpr auto tail () const -> usize
 
constexpr void assume_head (usize head)
 
constexpr void assume_tail (usize tail)
 
- Public Member Functions inherited from di::container::MutableRingInterface< StaticRing< T, SizeConstant >, T >
constexpr auto clone () const
 
constexpr void clear ()
 
constexpr auto push_back (T const &value) -> decltype(auto) requires(concepts::CopyConstructible< T >)
 
constexpr auto push_back (T &&value) -> decltype(auto) requires(concepts::MoveConstructible< T >)
 
constexpr auto emplace_back (Args &&... args) -> decltype(auto)
 
constexpr auto append_container (Con &&container)
 
constexpr auto pop_back () -> decltype(auto)
 
constexpr auto push_front (T const &value) -> decltype(auto) requires(concepts::CopyConstructible< T >)
 
constexpr auto push_front (T &&value) -> decltype(auto) requires(concepts::MoveConstructible< T >)
 
constexpr auto emplace_front (Args &&... args) -> decltype(auto)
 
constexpr auto prepend_container (Con &&container)
 
constexpr auto pop_front () -> decltype(auto)
 
constexpr auto insert (ConstIterator position, T const &value)
 
constexpr auto insert (ConstIterator position, T &&value)
 
constexpr auto emplace (ConstIterator position, Args &&... args)
 
constexpr auto erase (ConstIterator position)
 
constexpr auto erase (ConstIterator start, ConstIterator end)
 
constexpr auto iterator (ConstIterator iter)
 
constexpr auto reserve (usize n)
 
constexpr auto make_contigous ()
 
constexpr auto resize (size_t count)
 
constexpr auto resize (size_t count, T const &value)
 
- Public Member Functions inherited from di::container::ConstantRingInterface< StaticRing< T, SizeConstant >, T >
constexpr auto size () const -> usize
 
constexpr auto size_bytes () const -> usize
 
constexpr auto empty () const -> bool
 
constexpr auto begin ()
 
constexpr auto begin () const
 
constexpr auto end ()
 
constexpr auto end () const
 
constexpr auto front ()
 
constexpr auto front () const
 
constexpr auto back ()
 
constexpr auto back () const
 
constexpr auto at (usize index)
 
constexpr auto at (usize index) const
 
constexpr auto operator[] (usize index) -> decltype(auto)
 
constexpr auto operator[] (usize index) const -> decltype(auto)
 
constexpr auto iterator (usize index)
 
constexpr auto iterator (usize index) const
 
constexpr auto citerator (usize index) const
 

Member Typedef Documentation

◆ ConstValue

template<typename T, typename SizeConstant>
using di::container::StaticRing< T, SizeConstant >::ConstValue = T const

◆ Value

template<typename T, typename SizeConstant>
using di::container::StaticRing< T, SizeConstant >::Value = T

Constructor & Destructor Documentation

◆ StaticRing() [1/3]

template<typename T, typename SizeConstant>
di::container::StaticRing< T, SizeConstant >::StaticRing ( )
inlineconstexpr

◆ StaticRing() [2/3]

template<typename T, typename SizeConstant>
di::container::StaticRing< T, SizeConstant >::StaticRing ( StaticRing< T, SizeConstant > const & )
default

◆ StaticRing() [3/3]

template<typename T, typename SizeConstant>
di::container::StaticRing< T, SizeConstant >::StaticRing ( StaticRing< T, SizeConstant > && )
default

Member Function Documentation

◆ assume_head()

template<typename T, typename SizeConstant>
void di::container::StaticRing< T, SizeConstant >::assume_head ( usize head)
inlineconstexpr

◆ assume_size()

template<typename T, typename SizeConstant>
void di::container::StaticRing< T, SizeConstant >::assume_size ( usize size)
inlineconstexpr

◆ assume_tail()

template<typename T, typename SizeConstant>
void di::container::StaticRing< T, SizeConstant >::assume_tail ( usize tail)
inlineconstexpr

◆ capacity()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::capacity ( ) const -> usize
inlineconstexpr

◆ grow_capacity()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::grow_capacity ( usize min_capacity) const -> usize
inlineconstexpr

◆ head()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::head ( ) const -> usize
inlineconstexpr

◆ max_size()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::max_size ( ) const -> usize
inlineconstexpr

◆ operator=() [1/2]

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::operator= ( StaticRing< T, SizeConstant > && ) -> StaticRing &=default
default

◆ operator=() [2/2]

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::operator= ( StaticRing< T, SizeConstant > const & ) -> StaticRing &=default
default

◆ reserve_from_nothing()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::reserve_from_nothing ( usize n) -> Expected<void, NoCapacityError>
inlineconstexpr

◆ span() [1/2]

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::span ( ) -> Span<T>
inlineconstexpr

◆ span() [2/2]

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::span ( ) const -> Span<T const>
inlineconstexpr

◆ tail()

template<typename T, typename SizeConstant>
auto di::container::StaticRing< T, SizeConstant >::tail ( ) const -> usize
inlineconstexpr

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