15#ifndef IOX2_BB_CONTAINER_UNINITIALIZED_ARRAY_HPP
16#define IOX2_BB_CONTAINER_UNINITIALIZED_ARRAY_HPP
26template <
typename ElementType, u
int64_t Capacity>
33 char data[
sizeof(ElementType)];
44template <
typename ElementType, u
int64_t Capacity>
51 char data[
sizeof(ElementType)];
67template <
typename ElementType, u
int64_t Capacity,
template <
typename, u
int64_t>
class Buffer =
NonZeroedBuffer>
69 static_assert(Capacity > 0U,
"The size of the UninitializedArray must be greater than 0!");
91 constexpr ElementType&
operator[](
const uint64_t index)
noexcept;
97 constexpr const ElementType&
operator[](
const uint64_t index)
const noexcept;
112 static constexpr uint64_t capacity() noexcept;
116 Buffer<ElementType, Capacity> m_buffer;
124template <typename T, uint64_t N, template <typename, uint64_t> class Buffer>
130#include "iox2/legacy/detail/uninitialized_array.inl"
Wrapper class for a C-style array of type ElementType and size Capacity. Per default it is uninitiali...
UninitializedArray & operator=(UninitializedArray &&)=delete
~UninitializedArray()=default
const ElementType * const_iterator
constexpr ElementType & operator[](const uint64_t index) noexcept
returns a reference to the element stored at index
iterator begin() noexcept
returns an iterator to the beginning of the UninitializedArray
UninitializedArray(const UninitializedArray &)=delete
UninitializedArray(UninitializedArray &&)=delete
UninitializedArray & operator=(const UninitializedArray &)=delete
constexpr UninitializedArray() noexcept
constexpr const ElementType & operator[](const uint64_t index) const noexcept
returns a const reference to the element stored at index
struct used as policy parameter in UninitializedArray to wrap an uninitialized array
struct used as policy parameter in UninitializedArray to wrap an array with all elements zeroed