Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ll::data::SmallVector< T, N > Class Template Reference
Inheritance diagram for ll::data::SmallVector< T, N >:

Public Types

using size_type
using value_type = T
using difference_type = std::ptrdiff_t
using reference = T&
using const_reference = T const&
using pointer = T*
using const_pointer = T const*
using iterator = pointer
using const_iterator = const_pointer
using reverse_iterator = std::reverse_iterator<iterator>
using const_reverse_iterator = std::reverse_iterator<const_iterator>

Public Member Functions

 SmallVector (SmallVector const &other)
 SmallVector (SmallVector &&other) noexcept(std::is_nothrow_move_constructible_v< T >)
 SmallVector (size_type count)
 SmallVector (size_type count, T const &value)
 SmallVector (std::initializer_list< T > list)
template<std::input_iterator It>
 SmallVector (It first, It last)
SmallVector & operator= (SmallVector const &other)
SmallVector & operator= (SmallVector &&other) noexcept(std::is_nothrow_move_constructible_v< T >)
SmallVector & operator= (std::initializer_list< T > list)
reference operator[] (size_type i) noexcept
const_reference operator[] (size_type i) const noexcept
reference at (size_type i)
const_reference at (size_type i) const
reference front () noexcept
const_reference front () const noexcept
reference back () noexcept
const_reference back () const noexcept
pointer data () noexcept
const_pointer data () const noexcept
iterator begin () noexcept
const_iterator begin () const noexcept
const_iterator cbegin () const noexcept
iterator end () noexcept
const_iterator end () const noexcept
const_iterator cend () const noexcept
reverse_iterator rbegin () noexcept
const_reverse_iterator rbegin () const noexcept
const_reverse_iterator crbegin () const noexcept
reverse_iterator rend () noexcept
const_reverse_iterator rend () const noexcept
const_reverse_iterator crend () const noexcept
void reserve (size_type n)
void shrink_to_fit ()
template<class... Args>
reference emplace_back (Args &&... args)
reference push_back (T const &value)
reference push_back (T &&value)
template<class... Args>
iterator emplace (const_iterator pos, Args &&... args)
iterator insert (const_iterator pos, T const &value)
iterator insert (const_iterator pos, T &&value)
iterator insert (const_iterator pos, size_type count, T const &value)
template<std::input_iterator It>
iterator insert (const_iterator pos, It first, It last)
iterator insert (const_iterator pos, std::initializer_list< T > list)
void pop_back () noexcept
iterator erase (const_iterator pos)
iterator erase (const_iterator first, const_iterator last)
void clear () noexcept
void resize (size_type n)
void resize (size_type n, T const &value)
void assign (size_type count, T const &value)
template<std::input_iterator It>
void assign (It first, It last)
void assign (std::initializer_list< T > list)
void swap (SmallVectorBase &other)
size_type size () const noexcept
size_type capacity () const noexcept
bool empty () const noexcept

Static Public Member Functions

static constexpr size_type max_size () noexcept

Static Public Attributes

static constexpr uint32_t inlineCapacity = N

Protected Attributes

std::byte * mData
size_type mSize
size_type mCapacity

Static Protected Attributes

static constexpr float growthFactor = 1.5f

Friends

void swap (SmallVector &a, SmallVector &b)

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