Sen API
Sen Libraries
Loading...
Searching...
No Matches
static_vector.h File Reference
#include "sen/core/base/assert.h"
#include "sen/core/base/result.h"
#include <cstddef>
#include <cstdint>
#include <iterator>
#include <memory>

Go to the source code of this file.

Classes

class  sen::StaticVectorBase< T >
 Base class for stack-based, exception-safe and resizable vector with fixed-capacity. More...
class  sen::StaticVector< T, s >
 Stack-based, exception-free and resizable vector with fixed-capacity. More...

Namespaces

namespace  sen

Macros

#define SEN_VECTOR_TRY(...)

Enumerations

enum class  sen::StaticVectorError : std::uint8_t { sen::StaticVectorError::full , sen::StaticVectorError::badRange , sen::StaticVectorError::empty }
 Things that can go wrong when using a StaticVector. More...

Functions

template<typename T, std::size_t size>
std::enable_if_t< HasOperator< T >::eq, bool > sen::operator== (StaticVector< T, size > const &lhs, StaticVector< T, size > const &rhs) noexcept
 Checks if the contents of lhs and rhs are equal, that is, they have the same number of elements and each element in lhs compares equal with the element in rhs at the same position.
template<typename T, std::size_t size>
std::enable_if_t< HasOperator< T >::ne, bool > sen::operator!= (StaticVector< T, size > const &lhs, StaticVector< T, size > const &rhs) noexcept
 Equivalent to negating operator ==.

Macro Definition Documentation

◆ SEN_VECTOR_TRY

#define SEN_VECTOR_TRY ( ...)
Value:
{ \
auto res = __VA_ARGS__; \
if (res.isError()) \
{ \
return Err(res.getError()); \
} \
}