Skip to content

Class inline_vector

class inline_vector<T, N> base

template <typename T, size_t N>
struct inline_vector { … }

A sequence container with fixed-capacity inline storage.

Template parameters
T The element type.
N The maximum number of elements the vector can hold.

typedef size_type

using size_type = size_t

Fully qualified name: kfr::inline_vector<T, N>::size_type

typedef stored_size_type

using stored_size_type = std::conditional_t<(N >= UINT16_MAX), uint32_t,
                                            std::conditional_t<(N >= UINT8_MAX), uint16_t, uint8_t>>

Smallest unsigned integer able to hold values up to

N , used to store the current size.

Fully qualified name: kfr::inline_vector<T, N>::stored_size_type

typedef value_type

using value_type       = T

Fully qualified name: kfr::inline_vector<T, N>::value_type

typedef pointer

using pointer          = T*

Fully qualified name: kfr::inline_vector<T, N>::pointer

typedef const_pointer

using const_pointer    = const T*

Fully qualified name: kfr::inline_vector<T, N>::const_pointer

typedef reference

using reference        = T&

Fully qualified name: kfr::inline_vector<T, N>::reference

typedef const_reference

using const_reference  = const T&

Fully qualified name: kfr::inline_vector<T, N>::const_reference

typedef iterator

using iterator         = pointer

Fully qualified name: kfr::inline_vector<T, N>::iterator

typedef const_iterator

using const_iterator   = const_pointer

Fully qualified name: kfr::inline_vector<T, N>::const_iterator

constructor inline_vector<T, N>()

constexpr inline_vector() noexcept : m_size(0) { … }

Creates an empty vector.

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>()

constructor inline_vector<T, N>(const inline_vector<T, N> &)

constexpr inline_vector(const inline_vector&) noexcept            = default

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(const inline_vector<T, N> &)

constructor inline_vector<T, N>(inline_vector<T, N> &&)

constexpr inline_vector(inline_vector&&) noexcept                 = default

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(inline_vector<T, N> &&)

function operator=(const inline_vector<T, N> &)

constexpr inline_vector& operator=(const inline_vector&) noexcept = default

Fully qualified name: kfr::inline_vector<T, N>::operator=(const inline_vector<T, N> &)

function operator=(inline_vector<T, N> &&)

constexpr inline_vector& operator=(inline_vector&&) noexcept      = default

Fully qualified name: kfr::inline_vector<T, N>::operator=(inline_vector<T, N> &&)

constructor inline_vector<T, N>(size_type)

constexpr inline_vector(size_type initial_size) : m_size(initial_size) { … }

Creates a vector holding initial_size value-initialized elements.

Parameters
initial_size Number of elements to create (must be <= N ).

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(size_type)

constructor inline_vector<T, N>(size_type, T)

constexpr inline_vector(size_type initial_size, T initial_value) : m_size(initial_size) { … }

Creates a vector holding initial_size copies of initial_value .

Parameters
initial_size Number of elements to create (must be <= N ).
initial_value Value used to fill the vector.

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(size_type, T)

constructor inline_vector<T, N>(std::initializer_list<T>)

constexpr inline_vector(std::initializer_list<T> list) : inline_vector(list.begin(), list.end()) { … }

Creates a vector from a brace-enclosed initializer list.

Parameters
list Initializer list whose size must not exceed N .

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(std::initializer_list<T>)

function inline_vector<T, N>(Iter, Iter)

template <typename Iter>
constexpr inline_vector(Iter first, Iter last) { … }

Creates a vector from the range [first, last) .

Template parameters
Iter Input iterator type.
Parameters
first Start of the source range.
last End of the source range.

Fully qualified name: kfr::inline_vector<T, N>::inline_vector<T, N>(Iter, Iter)

function at(size_type)

constexpr const_reference at(size_type index) const { … }

Returns a const reference to the element at index with bounds checking.

Parameters
index Position of the element (must be < size() ).

Fully qualified name: kfr::inline_vector<T, N>::at(size_type)

function at(size_type)

constexpr reference at(size_type index) { … }

Returns a reference to the element at index with bounds checking.

Parameters
index Position of the element (must be < size() ).

Fully qualified name: kfr::inline_vector<T, N>::at(size_type)

function operator[](size_type)

constexpr const_reference operator[](size_type index) const noexcept { … }

Returns a const reference to the element at index (no bounds checking).

Fully qualified name: kfr::inline_vector<T, N>::operator[](size_type)

function operator[](size_type)

constexpr reference operator[](size_type index) noexcept { … }

Returns a reference to the element at index (no bounds checking).

Fully qualified name: kfr::inline_vector<T, N>::operator[](size_type)

function size()

constexpr size_type size() const noexcept { … }

Returns the number of elements currently stored.

Fully qualified name: kfr::inline_vector<T, N>::size()

function data()

constexpr pointer data() noexcept { … }

Returns a pointer to the underlying element storage.

Fully qualified name: kfr::inline_vector<T, N>::data()

function data()

constexpr const_pointer data() const noexcept { … }

Returns a const pointer to the underlying element storage.

Fully qualified name: kfr::inline_vector<T, N>::data()

function empty()

constexpr bool empty() const noexcept { … }

Returns true if the vector holds no elements.

Fully qualified name: kfr::inline_vector<T, N>::empty()

function begin()

constexpr iterator begin() noexcept { … }

Returns an iterator to the first element.

Fully qualified name: kfr::inline_vector<T, N>::begin()

function end()

constexpr iterator end() noexcept { … }

Returns an iterator to one past the last element.

Fully qualified name: kfr::inline_vector<T, N>::end()

function begin()

constexpr const_iterator begin() const noexcept { … }

Returns a const iterator to the first element.

Fully qualified name: kfr::inline_vector<T, N>::begin()

function end()

constexpr const_iterator end() const noexcept { … }

Returns a const iterator to one past the last element.

Fully qualified name: kfr::inline_vector<T, N>::end()

function cbegin()

constexpr const_iterator cbegin() const noexcept { … }

Returns a const iterator to the first element.

Fully qualified name: kfr::inline_vector<T, N>::cbegin()

function cend()

constexpr const_iterator cend() const noexcept { … }

Returns a const iterator to one past the last element.

Fully qualified name: kfr::inline_vector<T, N>::cend()

function front()

constexpr reference front() noexcept { … }

Returns a reference to the first element.

Fully qualified name: kfr::inline_vector<T, N>::front()

function back()

constexpr reference back() noexcept { … }

Returns a reference to the last element.

Fully qualified name: kfr::inline_vector<T, N>::back()

function front()

constexpr const_reference front() const noexcept { … }

Returns a const reference to the first element.

Fully qualified name: kfr::inline_vector<T, N>::front()

function back()

constexpr const_reference back() const noexcept { … }

Returns a const reference to the last element.

Fully qualified name: kfr::inline_vector<T, N>::back()

function push_back(T)

constexpr void push_back(T value) { … }

Appends value to the end of the vector.

Parameters
value Value to append. Triggers a logic error if the vector is full.

Fully qualified name: kfr::inline_vector<T, N>::push_back(T)

function operator==(const inline_vector<T, N> &)

constexpr bool operator==(const inline_vector& other) const { … }

Returns true if both vectors contain the same elements in the same order.

Fully qualified name: kfr::inline_vector<T, N>::operator==(const inline_vector<T, N> &)

function operator!=(const inline_vector<T, N> &)

constexpr bool operator!=(const inline_vector& other) const { … }

Returns true if the vectors differ in size or contents.

Fully qualified name: kfr::inline_vector<T, N>::operator!=(const inline_vector<T, N> &)

variable m_values

T m_values[N]

Inline storage for the elements.

Fully qualified name: kfr::inline_vector<T, N>::m_values

variable m_size

Current number of elements stored.

Fully qualified name: kfr::inline_vector<T, N>::m_size

Fully qualified name: kfr::inline_vector<T, N>

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.