#include <gtopt/strong_index_vector.hpp>
StrongIndexVector class
A vector that enforces access through a strongly-typed index. Inherits privately from std::vector to ensure type safety. Implements efficient move operations marked with noexcept to enable compiler optimizations.
Public functions
- auto at(Index pos) -> constexpr auto&
- auto at(Index pos) const -> constexpr auto&
- auto operator=(StrongIndexVector&& other) -> constexpr StrongIndexVector& defaulted noexcept
- auto operator=(StrongIndexVector const& other) -> constexpr StrongIndexVector& defaulted
- auto operator[](Index pos) const -> constexpr auto& noexcept
- auto operator[](Index pos) -> constexpr auto& noexcept
- auto StrongIndexVector() -> constexpr defaulted noexcept
- auto StrongIndexVector(InputIt first, InputIt last) -> constexpr
- auto StrongIndexVector(std::initializer_list<T> init) -> constexpr
- auto StrongIndexVector(std::vector<T>::size_type count) -> constexpr explicit
- auto StrongIndexVector(std::vector<T>::size_type count, const T& value) -> constexpr explicit
- auto StrongIndexVector(StrongIndexVector&& other) -> constexpr defaulted noexcept
- auto StrongIndexVector(StrongIndexVector const& other) -> constexpr defaulted
- auto ~StrongIndexVector() -> constexpr defaulted