LeviLamina
|
Public Member Functions | |
constexpr T * | get () noexcept |
constexpr T const * | get () const noexcept |
constexpr CopyCtor & | getCopyCtor () noexcept |
constexpr CopyCtor const & | getCopyCtor () const noexcept |
constexpr Deleter & | getDeleter () noexcept |
constexpr Deleter const & | getDeleter () const noexcept |
constexpr T * | release () noexcept |
constexpr void | reset (T *ptr=nullptr, CopyCtor const ©=CopyCtor{}) noexcept |
constexpr | operator bool () const noexcept |
template<class... Args> | |
constexpr T & | emplace (Args &&... args) |
constexpr | IndirectValue (std::nullptr_t) noexcept |
constexpr | IndirectValue (T *ptr) noexcept |
template<class... Args> | |
constexpr | IndirectValue (std::in_place_t, Args &&... args) |
constexpr | IndirectValue (IndirectValue const &other) noexcept(std::is_nothrow_copy_constructible_v< T >) |
template<class U , class C2 , class D2 > requires (std::is_convertible_v<U*, T*>) | |
constexpr | IndirectValue (IndirectValue< U, C2, D2 > const &other) noexcept(std::is_nothrow_copy_constructible_v< U >) |
constexpr | IndirectValue (IndirectValue &&other) noexcept |
template<class U , class C2 , class D2 > requires (std::is_convertible_v<U*, T*>) | |
constexpr | IndirectValue (IndirectValue< U, C2, D2 > &&other) noexcept |
constexpr IndirectValue & | operator= (IndirectValue const &other) noexcept(std::is_nothrow_copy_constructible_v< T >) |
template<class U , class C2 , class D2 > requires (std::is_convertible_v<U*, T*>) | |
constexpr IndirectValue & | operator= (IndirectValue< U, C2, D2 > const &other) noexcept(std::is_nothrow_copy_constructible_v< U >) |
constexpr IndirectValue & | operator= (IndirectValue &&other) noexcept |
template<class U , class C2 , class D2 > requires (std::is_convertible_v<U*, T*>) | |
constexpr IndirectValue & | operator= (IndirectValue< U, C2, D2 > &&other) noexcept |
constexpr T * | operator-> () noexcept |
constexpr T const * | operator-> () const noexcept |
constexpr T & | operator* () &noexcept |
constexpr T const & | operator* () const &noexcept |
constexpr T && | operator* () &&noexcept |
constexpr T const && | operator* () const &&noexcept |