Otclient  14/8/2020
stdext::weak_ptr< T > Class Template Reference

#include <shared_ptr.h>

Public Types

typedef T element_type
 
typedef shared_base< T > *weak_ptr::* unspecified_bool_type
 

Public Member Functions

 weak_ptr ()
 
 weak_ptr (shared_ptr< T > const &rhs)
 
template<class U >
 weak_ptr (shared_ptr< U > const &rhs, typename std::is_convertible< U, T >::type *=nullptr)
 
 weak_ptr (weak_ptr< T > const &rhs)
 
template<class U >
 weak_ptr (weak_ptr< U > const &rhs, typename std::is_convertible< U, T >::type *=nullptr)
 
 ~weak_ptr ()
 
void reset ()
 
void swap (weak_ptr &rhs)
 
T * get () const
 
refcount_t use_count () const
 
refcount_t weak_count () const
 
bool expired () const
 
shared_ptr< T > lock ()
 
weak_ptroperator= (weak_ptr const &rhs)
 
template<class U >
weak_ptroperator= (shared_ptr< U > const &rhs)
 
template<class U >
weak_ptroperator= (weak_ptr< T > const &rhs)
 
 operator unspecified_bool_type () const
 
bool operator! () const
 
 weak_ptr (weak_ptr &&rhs)
 
weak_ptroperator= (weak_ptr &&rhs)
 

Detailed Description

template<class T>
class stdext::weak_ptr< T >

Definition at line 43 of file shared_ptr.h.

Member Typedef Documentation

◆ element_type

template<class T >
typedef T stdext::weak_ptr< T >::element_type

Definition at line 149 of file shared_ptr.h.

◆ unspecified_bool_type

template<class T >
typedef shared_base<T>* weak_ptr::* stdext::weak_ptr< T >::unspecified_bool_type

Definition at line 176 of file shared_ptr.h.

Constructor & Destructor Documentation

◆ weak_ptr() [1/6]

template<class T >
stdext::weak_ptr< T >::weak_ptr ( )
inline

Definition at line 151 of file shared_ptr.h.

Here is the caller graph for this function:

◆ weak_ptr() [2/6]

template<class T >
stdext::weak_ptr< T >::weak_ptr ( shared_ptr< T > const &  rhs)
inline

Definition at line 152 of file shared_ptr.h.

Here is the call graph for this function:

◆ weak_ptr() [3/6]

template<class T >
template<class U >
stdext::weak_ptr< T >::weak_ptr ( shared_ptr< U > const &  rhs,
typename std::is_convertible< U, T >::type *  = nullptr 
)
inline

Definition at line 154 of file shared_ptr.h.

Here is the call graph for this function:

◆ weak_ptr() [4/6]

template<class T >
stdext::weak_ptr< T >::weak_ptr ( weak_ptr< T > const &  rhs)
inline

Definition at line 155 of file shared_ptr.h.

Here is the call graph for this function:

◆ weak_ptr() [5/6]

template<class T >
template<class U >
stdext::weak_ptr< T >::weak_ptr ( weak_ptr< U > const &  rhs,
typename std::is_convertible< U, T >::type *  = nullptr 
)
inline

Definition at line 157 of file shared_ptr.h.

Here is the call graph for this function:

◆ ~weak_ptr()

template<class T >
stdext::weak_ptr< T >::~weak_ptr ( )
inline

Definition at line 158 of file shared_ptr.h.

Here is the call graph for this function:

◆ weak_ptr() [6/6]

template<class T >
stdext::weak_ptr< T >::weak_ptr ( weak_ptr< T > &&  rhs)
inline

Definition at line 181 of file shared_ptr.h.

Member Function Documentation

◆ expired()

template<class T >
bool stdext::weak_ptr< T >::expired ( ) const
inline

Definition at line 166 of file shared_ptr.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get()

template<class T >
T* stdext::weak_ptr< T >::get ( ) const
inline

Definition at line 163 of file shared_ptr.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lock()

template<class T >
shared_ptr<T> stdext::weak_ptr< T >::lock ( )
inline

Definition at line 167 of file shared_ptr.h.

◆ operator unspecified_bool_type()

template<class T >
stdext::weak_ptr< T >::operator unspecified_bool_type ( ) const
inline

Definition at line 177 of file shared_ptr.h.

◆ operator!()

template<class T >
bool stdext::weak_ptr< T >::operator! ( ) const
inline

Definition at line 178 of file shared_ptr.h.

Here is the call graph for this function:

◆ operator=() [1/4]

template<class T >
template<class U >
weak_ptr& stdext::weak_ptr< T >::operator= ( shared_ptr< U > const &  rhs)
inline

Definition at line 171 of file shared_ptr.h.

Here is the call graph for this function:

◆ operator=() [2/4]

template<class T >
weak_ptr& stdext::weak_ptr< T >::operator= ( weak_ptr< T > &&  rhs)
inline

Definition at line 182 of file shared_ptr.h.

Here is the call graph for this function:

◆ operator=() [3/4]

template<class T >
weak_ptr& stdext::weak_ptr< T >::operator= ( weak_ptr< T > const &  rhs)
inline

Definition at line 169 of file shared_ptr.h.

Here is the call graph for this function:

◆ operator=() [4/4]

template<class T >
template<class U >
weak_ptr& stdext::weak_ptr< T >::operator= ( weak_ptr< T > const &  rhs)
inline

Definition at line 173 of file shared_ptr.h.

Here is the call graph for this function:

◆ reset()

template<class T >
void stdext::weak_ptr< T >::reset ( )
inline

Definition at line 160 of file shared_ptr.h.

Here is the call graph for this function:

◆ swap()

template<class T >
void stdext::weak_ptr< T >::swap ( weak_ptr< T > &  rhs)
inline

Definition at line 161 of file shared_ptr.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ use_count()

template<class T >
refcount_t stdext::weak_ptr< T >::use_count ( ) const
inline

Definition at line 164 of file shared_ptr.h.

Here is the call graph for this function:

◆ weak_count()

template<class T >
refcount_t stdext::weak_ptr< T >::weak_count ( ) const
inline

Definition at line 165 of file shared_ptr.h.

Here is the call graph for this function:

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