di 0.1.0
Loading...
Searching...
No Matches
di::Vector< T, Alloc > Class Template Reference

#include <di/container/vector/vector.h>

Inheritance diagram for di::Vector< T, Alloc >:
di::container::MutableVectorInterface< Vector< T, Alloc >, T > di::container::ConstantVectorInterface< Vector< T, Alloc >, T >

Public Types

using Value = T
using ConstValue = T const
using Allocator = Alloc

Public Member Functions

constexpr Vector ()=default
constexpr Vector (Vector const &)=delete
constexpr Vector (Vector &&other)
constexpr Vector (std::initializer_list< T > init)
constexpr ~Vector ()
constexpr auto operator= (Vector const &) -> Vector &=delete
constexpr auto operator= (Vector &&other) -> Vector &
constexpr auto span () -> Span< Value >
constexpr auto span () const -> Span< ConstValue >
constexpr auto capacity () const -> usize
constexpr auto max_size () const -> usize
constexpr auto reserve_from_nothing (usize n) -> meta::AllocatorResult< Alloc >
constexpr void assume_size (usize size)
constexpr auto grow_capacity (usize min_capacity) const -> usize
constexpr auto allocator () -> Alloc &
constexpr auto allocator () const -> Alloc const &
Public Member Functions inherited from di::container::MutableVectorInterface< Vector< T, Alloc >, 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 insert (ConstIterator position, T const &value)
constexpr auto insert_container (ConstIterator position, Con &&container)
constexpr auto emplace (ConstIterator position, Args &&... args)
constexpr auto pop_back ()
constexpr auto erase (ConstIterator position)
constexpr auto erase_unstable (ConstIterator iter)
constexpr auto resize (size_t count)
constexpr auto iterator (ConstIterator iter)
constexpr auto reserve (size_t n)
Public Member Functions inherited from di::container::ConstantVectorInterface< Vector< T, Alloc >, T >
constexpr auto size () const -> size_t
constexpr auto size_bytes () const -> size_t
constexpr auto empty () const -> bool
constexpr auto begin ()
constexpr auto end ()
constexpr auto front ()
constexpr auto back ()
constexpr auto at (size_t index)
constexpr auto operator[] (size_t index) -> decltype(auto)
constexpr auto iterator (size_t index)
constexpr auto citerator (size_t index) const
constexpr auto data ()
constexpr auto first (size_t count)
constexpr auto last (size_t count)
constexpr auto subspan (size_t offset)

Member Typedef Documentation

◆ Allocator

template<typename T, concepts::Allocator Alloc>
using di::container::Vector< T, Alloc >::Allocator = Alloc

◆ ConstValue

template<typename T, concepts::Allocator Alloc>
using di::container::Vector< T, Alloc >::ConstValue = T const

◆ Value

template<typename T, concepts::Allocator Alloc>
using di::container::Vector< T, Alloc >::Value = T

Constructor & Destructor Documentation

◆ Vector() [1/4]

template<typename T, concepts::Allocator Alloc>
di::container::Vector< T, Alloc >::Vector ( )
constexprdefault

◆ Vector() [2/4]

template<typename T, concepts::Allocator Alloc>
di::container::Vector< T, Alloc >::Vector ( Vector< T, Alloc > const & )
constexprdelete

◆ Vector() [3/4]

template<typename T, concepts::Allocator Alloc>
di::container::Vector< T, Alloc >::Vector ( Vector< T, Alloc > && other)
inlineconstexpr

◆ Vector() [4/4]

template<typename T, concepts::Allocator Alloc>
di::container::Vector< T, Alloc >::Vector ( std::initializer_list< T > init)
inlineconstexpr

◆ ~Vector()

template<typename T, concepts::Allocator Alloc>
di::container::Vector< T, Alloc >::~Vector ( )
inlineconstexpr

Member Function Documentation

◆ allocator() [1/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::allocator ( ) ->Alloc &
inlineconstexpr

◆ allocator() [2/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::allocator ( ) const->Allocconst &
inlineconstexpr

◆ assume_size()

template<typename T, concepts::Allocator Alloc>
void di::container::Vector< T, Alloc >::assume_size ( usize size)
inlineconstexpr

◆ capacity()

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::capacity ( ) const->usize
inlineconstexpr

◆ grow_capacity()

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::grow_capacity ( usize min_capacity) const->usize
inlineconstexpr

◆ max_size()

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::max_size ( ) const->usize
inlineconstexpr

◆ operator=() [1/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::operator= ( Vector< T, Alloc > && other) ->Vector &
inlineconstexpr

◆ operator=() [2/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::operator= ( Vector< T, Alloc > const & ) ->Vector &=delete
constexprdelete

◆ reserve_from_nothing()

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::reserve_from_nothing ( usize n) ->meta::AllocatorResult< Alloc >
inlineconstexpr

◆ span() [1/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::span ( ) ->Span< Value >
inlineconstexpr

◆ span() [2/2]

template<typename T, concepts::Allocator Alloc>
auto di::container::Vector< T, Alloc >::span ( ) const->Span< ConstValue >
inlineconstexpr

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