#include <di/any/storage/unique_storage.h>
|
static constexpr auto | storage_category () -> StorageCategory |
|
template<typename T> |
static constexpr auto | creation_is_fallible (InPlaceType< T >) -> bool |
|
template<typename Any, typename T, typename... Args>
requires (concepts::ConstructibleFrom<T, Args...> && creation_is_fallible(in_place_type<T>)) |
static constexpr void | create (InPlaceType< Any >, meta::LikeExpected< CreationResult< T >, Any > &self, InPlaceType< T >, Args &&... args) |
|
template<typename T, typename... Args>
requires (concepts::ConstructibleFrom<T, Args...>) |
static constexpr auto | init (UniqueStorage *self, InPlaceType< T >, Args &&... args) |
|
static constexpr void | move_construct (concepts::VTableFor< Interface > auto &vtable, UniqueStorage *dest, UniqueStorage *source) |
|
template<concepts::VTableFor< Interface > VTable> |
static constexpr void | move_assign (VTable &dest_vtable, UniqueStorage *dest, VTable &source_vtable, UniqueStorage *source) |
|
static constexpr void | destroy (concepts::VTableFor< Interface > auto &vtable, UniqueStorage *self) |
|
◆ CreationResult
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<typename>
◆ Interface
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ Manage
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ UniqueStorage() [1/2]
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ UniqueStorage() [2/2]
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ ~UniqueStorage()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ create()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ creation_is_fallible()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<typename T>
◆ destroy()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ down_cast() [1/2]
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<typename T>
◆ down_cast() [2/2]
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<typename T>
◆ init()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<typename T, typename... Args>
requires (concepts::ConstructibleFrom<T, Args...>)
◆ move_assign()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
template<concepts::VTableFor<
Interface > VTable>
◆ move_construct()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ operator=()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
◆ storage_category()
template<concepts::Allocator Alloc = platform::DefaultAllocator>
The documentation for this struct was generated from the following file: