unititialized_t<T> is an appropriately sized and aligned storage for type T, with a useful interface to create and destroy the object
More...
#include <uninitialized.h>
|
| constexpr | unititialized_t (default_init_t) noexcept(detail::nothrow_default_constructible< T >) |
template<typename... Args>
requires detail::paren_constructible_from<T, Args...> |
| constexpr | unititialized_t (paren_init_t, Args &&... args) noexcept(detail::nothrow_paren_constructible_from< T, Args... >) |
template<typename... Args>
requires detail::brace_constructible_from<T, Args...> |
| constexpr | unititialized_t (brace_init_t, Args &&... args) noexcept(detail::nothrow_brace_constructible_from< T, Args... >) |
template<typename Self>
requires detail::default_constructible<T> |
| constexpr auto | default_init (this Self &&self) noexcept(detail::nothrow_default_constructible< T >) -> T & |
template<typename Self, typename... Args>
requires detail::paren_constructible_from<T, Args...> |
| constexpr auto | paren_init (this Self &&self, Args &&... args) noexcept(detail::nothrow_paren_constructible_from< T, Args... >) -> T & |
template<typename Self, typename... Args>
requires detail::brace_constructible_from<T, Args...> |
| constexpr auto | brace_init (this Self &&self, Args &&... args) noexcept(detail::nothrow_brace_constructible_from< T, Args... >) -> T & |
| template<typename Self> |
| constexpr auto | ptr (this Self &&self) noexcept -> auto * |
| template<typename Self> |
| constexpr auto | operator-> (this Self &&self) noexcept -> auto * |
| template<typename Self> |
| constexpr auto | ref (this Self &&self) noexcept -> auto && |
| template<typename Self> |
| constexpr auto | operator* (this Self &&self) noexcept -> auto && |
| template<typename Self> |
| constexpr auto | bytes (this Self &&self) noexcept -> std::ranges::borrowed_range auto |
| template<typename Self> |
| constexpr auto | destroy (this Self &&self) noexcept(std::is_nothrow_destructible_v< T >) |
template<detail::sized T>
union ghassanpl::unititialized_t< T >
unititialized_t<T> is an appropriately sized and aligned storage for type T, with a useful interface to create and destroy the object
Definition at line 61 of file uninitialized.h.
◆ unititialized_t() [1/4]
template<detail::sized T>
◆ unititialized_t() [2/4]
template<detail::sized T>
|
|
inlineexplicitconstexprnoexcept |
◆ unititialized_t() [3/4]
template<detail::sized T>
template<typename... Args>
requires detail::paren_constructible_from<T, Args...>
|
|
inlineexplicitconstexprnoexcept |
◆ unititialized_t() [4/4]
template<detail::sized T>
template<typename... Args>
requires detail::brace_constructible_from<T, Args...>
|
|
inlineexplicitconstexprnoexcept |
◆ ~unititialized_t()
template<detail::sized T>
◆ brace_init()
template<detail::sized T>
template<typename Self, typename... Args>
requires detail::brace_constructible_from<T, Args...>
◆ bytes()
template<detail::sized T>
template<typename Self>
|
|
inlinenodiscardconstexprnoexcept |
◆ default_init()
template<detail::sized T>
template<typename Self>
requires detail::default_constructible<T>
◆ destroy()
template<detail::sized T>
template<typename Self>
◆ operator*()
template<detail::sized T>
template<typename Self>
|
|
inlinenodiscardconstexprnoexcept |
◆ operator->()
template<detail::sized T>
template<typename Self>
|
|
inlinenodiscardconstexprnoexcept |
◆ paren_init()
template<detail::sized T>
template<typename Self, typename... Args>
requires detail::paren_constructible_from<T, Args...>
◆ ptr()
template<detail::sized T>
template<typename Self>
|
|
inlinenodiscardconstexprnoexcept |
◆ ref()
template<detail::sized T>
template<typename Self>
|
|
inlinenodiscardconstexprnoexcept |