GRPC C++  1.39.1
Public Member Functions | Protected Member Functions | Friends
grpc_core::DualRefCounted< Child > Class Template Reference

#include <dual_ref_counted.h>

Public Member Functions

 ~DualRefCounted () override=default
 
RefCountedPtr< Child > Ref () GRPC_MUST_USE_RESULT
 
RefCountedPtr< Child > Ref (const DebugLocation &location, const char *reason) GRPC_MUST_USE_RESULT
 
void Unref ()
 
void Unref (const DebugLocation &location, const char *reason)
 
RefCountedPtr< Child > RefIfNonZero () GRPC_MUST_USE_RESULT
 
RefCountedPtr< Child > RefIfNonZero (const DebugLocation &location, const char *reason) GRPC_MUST_USE_RESULT
 
WeakRefCountedPtr< Child > WeakRef () GRPC_MUST_USE_RESULT
 
WeakRefCountedPtr< Child > WeakRef (const DebugLocation &location, const char *reason) GRPC_MUST_USE_RESULT
 
void WeakUnref ()
 
void WeakUnref (const DebugLocation &location, const char *reason)
 
 DualRefCounted (const DualRefCounted &)=delete
 
DualRefCountedoperator= (const DualRefCounted &)=delete
 
- Public Member Functions inherited from grpc_core::Orphanable
virtual void Orphan ()=0
 
 Orphanable (const Orphanable &)=delete
 
Orphanableoperator= (const Orphanable &)=delete
 

Protected Member Functions

 DualRefCounted (const char *trace=nullptr, int32_t initial_refcount=1)
 
- Protected Member Functions inherited from grpc_core::Orphanable
 Orphanable ()
 
virtual ~Orphanable ()
 

Friends

template<typename T >
class RefCountedPtr
 
template<typename T >
class WeakRefCountedPtr
 

Constructor & Destructor Documentation

◆ ~DualRefCounted()

template<typename Child >
grpc_core::DualRefCounted< Child >::~DualRefCounted ( )
overridedefault

◆ DualRefCounted() [1/2]

template<typename Child >
grpc_core::DualRefCounted< Child >::DualRefCounted ( const DualRefCounted< Child > &  )
delete

◆ DualRefCounted() [2/2]

template<typename Child >
grpc_core::DualRefCounted< Child >::DualRefCounted ( const char *  trace = nullptr,
int32_t  initial_refcount = 1 
)
inlineexplicitprotected

Member Function Documentation

◆ operator=()

template<typename Child >
DualRefCounted& grpc_core::DualRefCounted< Child >::operator= ( const DualRefCounted< Child > &  )
delete

◆ Ref() [1/2]

template<typename Child >
RefCountedPtr<Child> grpc_core::DualRefCounted< Child >::Ref ( )
inline

◆ Ref() [2/2]

template<typename Child >
RefCountedPtr<Child> grpc_core::DualRefCounted< Child >::Ref ( const DebugLocation location,
const char *  reason 
)
inline

◆ RefIfNonZero() [1/2]

template<typename Child >
RefCountedPtr<Child> grpc_core::DualRefCounted< Child >::RefIfNonZero ( )
inline

◆ RefIfNonZero() [2/2]

template<typename Child >
RefCountedPtr<Child> grpc_core::DualRefCounted< Child >::RefIfNonZero ( const DebugLocation location,
const char *  reason 
)
inline

◆ Unref() [1/2]

template<typename Child >
void grpc_core::DualRefCounted< Child >::Unref ( )
inline

◆ Unref() [2/2]

template<typename Child >
void grpc_core::DualRefCounted< Child >::Unref ( const DebugLocation location,
const char *  reason 
)
inline

◆ WeakRef() [1/2]

template<typename Child >
WeakRefCountedPtr<Child> grpc_core::DualRefCounted< Child >::WeakRef ( )
inline

◆ WeakRef() [2/2]

template<typename Child >
WeakRefCountedPtr<Child> grpc_core::DualRefCounted< Child >::WeakRef ( const DebugLocation location,
const char *  reason 
)
inline

◆ WeakUnref() [1/2]

template<typename Child >
void grpc_core::DualRefCounted< Child >::WeakUnref ( )
inline

◆ WeakUnref() [2/2]

template<typename Child >
void grpc_core::DualRefCounted< Child >::WeakUnref ( const DebugLocation location,
const char *  reason 
)
inline

Friends And Related Function Documentation

◆ RefCountedPtr

template<typename Child >
template<typename T >
friend class RefCountedPtr
friend

◆ WeakRefCountedPtr

template<typename Child >
template<typename T >
friend class WeakRefCountedPtr
friend

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