di 0.1.0
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 >:
di::container::MutableRingInterface< StaticRing< T, SizeConstant >, T > di::container::ConstantRingInterface< StaticRing< T, SizeConstant >, T >

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 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 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 emplace (ConstIterator position, Args &&... args)
constexpr auto insert_container (ConstIterator it, Con &&container)
constexpr auto erase (ConstIterator position)
constexpr auto iterator (ConstIterator iter)
constexpr auto reserve (usize n)
constexpr auto make_contigous ()
constexpr auto resize (size_t count)
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 end ()
constexpr auto front ()
constexpr auto back ()
constexpr auto at (usize index)
constexpr auto operator[] (usize index) -> decltype(auto)
constexpr auto iterator (usize index)
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< Tconst >
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: