|
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 |