LeviLamina
Loading...
Searching...
No Matches
ll::data::IndirectValue< T, CopyCtor, Deleter > Class Template Reference

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 &copy=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 IndirectValueoperator= (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 IndirectValueoperator= (IndirectValue< U, C2, D2 > const &other) noexcept(std::is_nothrow_copy_constructible_v< U >)
 
constexpr IndirectValueoperator= (IndirectValue &&other) noexcept
 
template<class U , class C2 , class D2 >
requires (std::is_convertible_v<U*, T*>)
constexpr IndirectValueoperator= (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
 

The documentation for this class was generated from the following file: