template <typename ValueType, int Capacity>

class InplaceVector

Defined at line 29 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

std::inplace_vector variation suitable for display drivers.

The interface aims to stay as close as possible to std::inplace_vector.

The following variations are intentional.

* Vectors are non-copyable and non-moveable. These operations are expensive,

and must be carried out explicitly by underlying code.

* Mutations that would invalidate iterators (removing individual elements,

inserting in the middle of the vector) are not currently supported. This

makes iterator invalidation easier to explain -- iterators remain valid

until clear() is called.

Public Methods

void InplaceVector<ValueType, Capacity> ()

The default constructor creates an empty container.

Defined at line 45 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

void ~InplaceVector<ValueType, Capacity> ()

Defined at line 49 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

bool empty ()

Defined at line 51 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

size_type size ()

Defined at line 52 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

size_type max_size ()

Defined at line 53 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

size_type capacity ()

Defined at line 54 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

ValueType * data ()

Defined at line 56 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const ValueType * data ()

Defined at line 57 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

cpp20::span<ValueType> Elements ()

span pointng to the vector's elements.

Defined at line 60 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

cpp20::span<const ValueType> Elements ()

Defined at line 61 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reference operator[] (size_type index)

Defined at line 63 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reference operator[] (size_type index)

Defined at line 63 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reference operator[] (size_type index)

Defined at line 64 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reference operator[] (size_type index)

Defined at line 64 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reference front ()

Defined at line 66 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reference front ()

Defined at line 67 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reference back ()

Defined at line 68 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reference back ()

Defined at line 69 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

iterator begin ()

Defined at line 71 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_iterator begin ()

Defined at line 72 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_iterator cbegin ()

Defined at line 73 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

iterator end ()

Defined at line 75 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_iterator end ()

Defined at line 76 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_iterator cend ()

Defined at line 77 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reverse_iterator rbegin ()

Defined at line 79 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reverse_iterator rbegin ()

Defined at line 80 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reverse_iterator crbegin ()

Defined at line 81 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

reverse_iterator rend ()

Defined at line 83 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reverse_iterator rend ()

Defined at line 84 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

const_reverse_iterator crend ()

Defined at line 85 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

void push_back (const ValueType & value)

Defined at line 90 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

void push_back (ValueType && value)

Defined at line 91 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

void InplaceVector<ValueType, Capacity> (std::initializer_list<ValueType> initializer)

Defined at line 116 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

template <class... Args>
reference emplace_back (Args &&... args)

Defined at line 127 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

template <class... Args>
reference emplace_back (Args &&... args)

Defined at line 127 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h

void clear ()

Defined at line 139 of file ../../src/graphics/display/lib/api-protocols/cpp/inplace-vector.h