Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
typed_buffer_array.hpp File Reference
#include <helios/assert.hpp>
#include <helios/container/details/typed_buffer_common.hpp>
#include <algorithm>
#include <concepts>
#include <cstddef>
#include <cstring>
#include <initializer_list>
#include <iterator>
#include <memory>
#include <memory_resource>
#include <new>
#include <ranges>
#include <span>
#include <type_traits>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  helios::container::TypedBufferArray< Allocator >
 Type-erased sequential byte storage for a single type (array variant). More...

Namespaces

namespace  helios
namespace  helios::container

Typedefs

using helios::container::PmrTypedBufferArray

Functions

template<TypedBufferStorable T, typename Allocator>
requires (std::is_class_v<Allocator> && !std::same_as<std::remove_cvref_t<T>, typename TypedBufferArray<Allocator>::size_type>)
auto helios::container::erase (TypedBufferArray< Allocator > &storage, const T &value) -> typename TypedBufferArray< Allocator >::size_type
 Erases all elements equal to value from the TypedBufferArray.
template<typename Allocator>
requires std::is_class_v<Allocator>
void helios::container::erase (TypedBufferArray< Allocator > &storage, typename TypedBufferArray< Allocator >::size_type pos)
 Erases the element at position pos from the TypedBufferArray (swap-then-pop, O(1), unstable).
template<TypedBufferStorable T, typename Allocator, typename Pred>
requires (std::is_class_v<Allocator> && std::predicate<Pred, const T&>)
auto helios::container::erase_if (TypedBufferArray< Allocator > &storage, Pred pred) -> typename TypedBufferArray< Allocator >::size_type
 Erases all elements satisfying the predicate from the TypedBufferArray.