QxOrm 1.4.9
C++ Object Relational Mapping library
Loading...
Searching...
No Matches

qx::trait::is_smart_ptr_to_pod<T>::value : return true if T is a smart-pointer of boost, Qt or QxOrm libraries and (*T) is a POD type (char, int, long, etc.), otherwise return false More...

#include <is_smart_ptr_to_pod.h>

Public Types

enum  { value = (qx::trait::is_smart_ptr<T>::value && (sizeof(qx::trait::is_smart_ptr_to_pod<T>::removeSmartPtr(t)) == sizeof(char))) }
 
typedef std::conditional< qx::trait::is_smart_ptr_to_pod< T >::value, std::true_type, std::false_type >::type type
 

Static Private Member Functions

template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const boost::scoped_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const boost::shared_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const boost::weak_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const boost::intrusive_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const QSharedDataPointer< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const QSharedPointer< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const QWeakPointer< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const qx::dao::ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const std::unique_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const std::shared_ptr< U > &)
 
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type removeSmartPtr (const std::weak_ptr< U > &)
 
static int removeSmartPtr (...)
 

Static Private Attributes

static T t
 

Detailed Description

template<typename T>
class qx::trait::is_smart_ptr_to_pod< T >

qx::trait::is_smart_ptr_to_pod<T>::value : return true if T is a smart-pointer of boost, Qt or QxOrm libraries and (*T) is a POD type (char, int, long, etc.), otherwise return false

Definition at line 57 of file is_smart_ptr_to_pod.h.

Member Typedef Documentation

◆ type

template<typename T >
typedef std::conditional<qx::trait::is_smart_ptr_to_pod<T>::value,std::true_type,std::false_type>::type qx::trait::is_smart_ptr_to_pod< T >::type

Definition at line 106 of file is_smart_ptr_to_pod.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename T >
anonymous enum
Enumerator
value 

Definition at line 104 of file is_smart_ptr_to_pod.h.

Member Function Documentation

◆ removeSmartPtr() [1/12]

template<typename T >
static int qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( ...)
staticprivate

◆ removeSmartPtr() [2/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const boost::intrusive_ptr< U > & )
staticprivate

◆ removeSmartPtr() [3/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const boost::scoped_ptr< U > & )
staticprivate

◆ removeSmartPtr() [4/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const boost::shared_ptr< U > & )
staticprivate

◆ removeSmartPtr() [5/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const boost::weak_ptr< U > & )
staticprivate

◆ removeSmartPtr() [6/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const QSharedDataPointer< U > & )
staticprivate

◆ removeSmartPtr() [7/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const QSharedPointer< U > & )
staticprivate

◆ removeSmartPtr() [8/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const QWeakPointer< U > & )
staticprivate

◆ removeSmartPtr() [9/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const qx::dao::ptr< U > & )
staticprivate

◆ removeSmartPtr() [10/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const std::shared_ptr< U > & )
staticprivate

◆ removeSmartPtr() [11/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const std::unique_ptr< U > & )
staticprivate

◆ removeSmartPtr() [12/12]

template<typename T >
template<typename U >
static std::conditional< qx::trait::is_qx_pod< U >::value, char, int >::type qx::trait::is_smart_ptr_to_pod< T >::removeSmartPtr ( const std::weak_ptr< U > & )
staticprivate

Member Data Documentation

◆ t

template<typename T >
T qx::trait::is_smart_ptr_to_pod< T >::t
staticprivate

Definition at line 100 of file is_smart_ptr_to_pod.h.


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