GDBserver
Public Member Functions | Private Attributes | List of all members
gdb::ref_ptr< T, Policy > Class Template Reference

#include "gdb_ref_ptr.h"

Public Member Functions

 ref_ptr ()
 
 ref_ptr (const std::nullptr_t)
 
 ref_ptr (T *obj)
 
 ref_ptr (const ref_ptr &other)
 
 ref_ptr (ref_ptr &&other)
 
 ~ref_ptr ()
 
ref_ptroperator= (const ref_ptr &other)
 
ref_ptroperator= (ref_ptr &&other)
 
void reset (T *obj)
 
T * get () const
 
T * release ()
 
T * operator-> () const
 

Private Attributes

T * m_obj
 

Detailed Description

template<typename T, typename Policy>
class gdb::ref_ptr< T, Policy >

Definition at line 49 of file gdb_ref_ptr.h.

Constructor & Destructor Documentation

◆ ref_ptr() [1/5]

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::ref_ptr ( )
inline

Definition at line 54 of file gdb_ref_ptr.h.

◆ ref_ptr() [2/5]

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::ref_ptr ( const std::nullptr_t  )
inline

Definition at line 60 of file gdb_ref_ptr.h.

◆ ref_ptr() [3/5]

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::ref_ptr ( T *  obj)
inlineexplicit

Definition at line 67 of file gdb_ref_ptr.h.

◆ ref_ptr() [4/5]

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::ref_ptr ( const ref_ptr< T, Policy > &  other)
inline

Definition at line 73 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

◆ ref_ptr() [5/5]

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::ref_ptr ( ref_ptr< T, Policy > &&  other)
inline

Definition at line 81 of file gdb_ref_ptr.h.

◆ ~ref_ptr()

template<typename T, typename Policy>
gdb::ref_ptr< T, Policy >::~ref_ptr ( )
inline

Definition at line 88 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

Member Function Documentation

◆ get()

template<typename T, typename Policy>
T* gdb::ref_ptr< T, Policy >::get ( ) const
inline

Definition at line 130 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

Referenced by gdb::operator!=(), and gdb::operator==().

◆ operator->()

template<typename T, typename Policy>
T* gdb::ref_ptr< T, Policy >::operator-> ( ) const
inline

Definition at line 147 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

◆ operator=() [1/2]

template<typename T, typename Policy>
ref_ptr& gdb::ref_ptr< T, Policy >::operator= ( const ref_ptr< T, Policy > &  other)
inline

◆ operator=() [2/2]

template<typename T, typename Policy>
ref_ptr& gdb::ref_ptr< T, Policy >::operator= ( ref_ptr< T, Policy > &&  other)
inline

Definition at line 108 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::reset().

◆ release()

template<typename T, typename Policy>
T* gdb::ref_ptr< T, Policy >::release ( )
inline

Definition at line 138 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

◆ reset()

template<typename T, typename Policy>
void gdb::ref_ptr< T, Policy >::reset ( T *  obj)
inline

Definition at line 121 of file gdb_ref_ptr.h.

References gdb::ref_ptr< T, Policy >::m_obj.

Referenced by gdb::ref_ptr< T, Policy >::operator=().

Member Data Documentation

◆ m_obj

template<typename T, typename Policy>
T* gdb::ref_ptr< T, Policy >::m_obj
private

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