LeviLamina
|
Public Member Functions | |
SharedPtr (std::nullptr_t) noexcept | |
SharedPtr (T *p) | |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr (SharedPtr< Y > const &other) | |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr (SharedPtr< Y > &&other) | |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr (WeakPtr< Y > const &other) | |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr< T > & | operator= (SharedPtr< Y > const &other) |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr< T > & | operator= (SharedPtr< Y > &&other) |
template<class Y > requires (std::convertible_to<Y*, T*>) | |
SharedPtr< T > & | operator= (WeakPtr< Y > const &other) |
T * | get () const |
T * | operator-> () const |
T & | operator* () const |
operator bool () const | |
int | use_count () const |
void | reset () |
Static Public Member Functions | |
template<typename... Args> | |
static SharedPtr< T > | make (Args &&... args) |
Public Attributes | |
SharedCounter< T > * | counter |