NCBI C++ ToolKit
Public Types | Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
CTypeRef Class Reference

Search Toolkit Book for CTypeRef

#include <serial/impl/typeref.hpp>

+ Collaboration diagram for CTypeRef:

Public Types

typedef TTypeInfo(* TGetProc) (void)
 
typedef TTypeInfo(* TGet1Proc) (TTypeInfo arg)
 
typedef TTypeInfo(* TGet2Proc) (TTypeInfo arg1, TTypeInfo arg2)
 

Public Member Functions

 CTypeRef (void)
 
 CTypeRef (TTypeInfo typeInfo)
 
 CTypeRef (TGetProc getProc)
 
 CTypeRef (TGet1Proc getter, const CTypeRef &arg)
 
 CTypeRef (TGet2Proc getter, const CTypeRef &arg1, const CTypeRef &arg2)
 
 CTypeRef (TGet2Proc getter, const CTypeRef &arg1, TGet1Proc getter2, const CTypeRef &arg2)
 
 CTypeRef (TGet2Proc getter, TGet1Proc getter1, const CTypeRef &arg1, const CTypeRef &arg2)
 
 CTypeRef (TGet2Proc getter, TGet1Proc getter1, const CTypeRef &arg1, TGet1Proc getter2, const CTypeRef &arg2)
 
 CTypeRef (CTypeInfoSource *source)
 
 CTypeRef (const CTypeRef &typeRef)
 
CTypeRefoperator= (const CTypeRef &typeRef)
 
 ~CTypeRef (void)
 
TTypeInfo Get (void) const
 
 DECLARE_OPERATOR_BOOL (m_Getter.load(memory_order_acquire) !=sx_GetAbort)
 
bool operator== (const CTypeRef &typeRef) const
 
bool operator!= (const CTypeRef &typeRef) const
 

Private Types

typedef TTypeInfo(* TGetter) (const CTypeRef &)
 

Private Member Functions

void Unref (void)
 
void Assign (const CTypeRef &typeRef)
 

Static Private Member Functions

static TTypeInfo sx_GetAbort (const CTypeRef &typeRef)
 
static TTypeInfo sx_GetReturn (const CTypeRef &typeRef)
 
static TTypeInfo sx_GetProc (const CTypeRef &typeRef)
 
static TTypeInfo sx_GetResolve (const CTypeRef &typeRef)
 

Private Attributes

atomic< TGetterm_Getter
 
atomic< TTypeInfom_ReturnData
 
union {
   TGetProc   CTypeRef::m_GetProcData
 
   CTypeInfoSource *   CTypeRef::m_ResolveData
 
}; 
 

Detailed Description

Definition at line 66 of file typeref.hpp.


The documentation for this class was generated from the following files:
Modified on Mon Apr 22 04:00:30 2024 by modify_doxy.py rev. 669887