ReactOS  0.4.13-dev-92-gf251225
type_traits.h File Reference
#include <stl/type_manips.h>
Include dependency graph for type_traits.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _IsIntegral< _Tp >
 
struct  _IsIntegral< bool >
 
struct  _IsIntegral< char >
 
struct  _IsIntegral< signed char >
 
struct  _IsIntegral< unsigned char >
 
struct  _IsIntegral< short >
 
struct  _IsIntegral< unsigned short >
 
struct  _IsIntegral< int >
 
struct  _IsIntegral< unsigned int >
 
struct  _IsIntegral< long >
 
struct  _IsIntegral< unsigned long >
 
struct  _IsRational< _Tp >
 
struct  _IsRational< float >
 
struct  _IsRational< double >
 
struct  _IsRational< long double >
 
struct  __type_traits< _Tp >
 
struct  __type_traits_aux< _IsPOD >
 
struct  __type_traits_aux< __false_type >
 
struct  __type_traits_aux< __true_type >
 
struct  _IsRef< _Tp >
 
struct  _IsPtr< _Tp >
 
struct  __type_traits< _Tp >
 
struct  _IsCVConvertibleIf< _ArePtrs, _Src, _Dst >
 
struct  _TrivialNativeTypeCopy< _Src, _Dst >
 
struct  _TrivialCopy< _Tp1, _Tp2 >
 
struct  _TrivialUCopy< _Tp1, _Tp2 >
 
struct  _DefaultZeroValue< _Tp >
 
struct  _TrivialInit< _Tp >
 
struct  _IsPtrType< _Tp >
 
struct  _IsRefType< _Tp >
 
struct  __call_traits< _Tp >
 
struct  _BothPtrType< _Tp1, _Tp2 >
 
struct  _OKToSwap< _Tp1, _Tp2, _IsRef1, _IsRef2 >
 
struct  _IsPOD< _Tp >
 
struct  _DefaultZeroValueQuestion< _Tp >
 
struct  __stlport_class< _Tp >
 
struct  _IsSTLportClass< _Tp >
 
class  _TpWithState< _Tp >
 
struct  _IsStateless< _Tp >
 

Macros

#define _STLP_DEFINE_TYPE_TRAITS_FOR(Type)
 
#define _STLP_IS_POD_ITER(_It, _Tp)   _Is_POD( _STLP_VALUE_TYPE( _It, _Tp ) )._Answer()
 

Functions

 _STLP_DEFINE_TYPE_TRAITS_FOR (bool)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (char)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (signed char)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (unsigned char)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (short)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (unsigned short)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (int)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (unsigned int)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (float)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (double)
 
 _STLP_DEFINE_TYPE_TRAITS_FOR (long double)
 
template<class _Tp1 , class _Tp2 , class _IsRef1 , class _IsRef2 >
_OKToSwap< _Tp1, _Tp2, _IsRef1, _IsRef2 > _IsOKToSwap (_Tp1 *, _Tp2 *, const _IsRef1 &, const _IsRef2 &)
 
template<class _Src , class _Dst >
_TrivialCopy< _Src, _Dst > _UseTrivialCopy (_Src *, _Dst *)
 
template<class _Src , class _Dst >
_TrivialUCopy< _Src, _Dst > _UseTrivialUCopy (_Src *, _Dst *)
 
template<class _Tp >
_TrivialInit< _Tp > _UseTrivialInit (_Tp *)
 
template<class _Tp >
_IsPOD< _Tp > _Is_POD (_Tp *)
 
template<class _Tp >
_DefaultZeroValueQuestion< _Tp > _HasDefaultZeroValue (_Tp *)
 

Macro Definition Documentation

◆ _STLP_DEFINE_TYPE_TRAITS_FOR

#define _STLP_DEFINE_TYPE_TRAITS_FOR (   Type)
Value:
_STLP_TEMPLATE_NULL struct __type_traits< const Type > : __type_traits_aux<__true_type> {}; \
_STLP_TEMPLATE_NULL struct __type_traits< volatile Type > : __type_traits_aux<__true_type> {}; \
_STLP_TEMPLATE_NULL struct __type_traits< const volatile Type > : __type_traits_aux<__true_type> {}
Type
Definition: Type.h:6
#define volatile
Definition: prototyp.h:117
#define _STLP_TEMPLATE_NULL
Definition: features.h:652
#define const
Definition: zconf.h:230

Definition at line 273 of file type_traits.h.

◆ _STLP_IS_POD_ITER

#define _STLP_IS_POD_ITER (   _It,
  _Tp 
)    _Is_POD( _STLP_VALUE_TYPE( _It, _Tp ) )._Answer()

Definition at line 619 of file type_traits.h.

Function Documentation

◆ _HasDefaultZeroValue()

template<class _Tp >
_DefaultZeroValueQuestion<_Tp> _HasDefaultZeroValue ( _Tp *  )
inline

Definition at line 561 of file type_traits.h.

Referenced by __uinit_aux(), and _Construct().

◆ _Is_POD()

template<class _Tp >
_IsPOD<_Tp> _Is_POD ( _Tp *  )
inline

Definition at line 551 of file type_traits.h.

552 { return _IsPOD<_Tp>(); }

Referenced by _Construct(), _Copy_Construct(), _Move_Construct(), and _Param_Construct().

◆ _IsOKToSwap()

template<class _Tp1 , class _Tp2 , class _IsRef1 , class _IsRef2 >
_OKToSwap<_Tp1, _Tp2, _IsRef1, _IsRef2> _IsOKToSwap ( _Tp1 *  ,
_Tp2 *  ,
const _IsRef1 &  ,
const _IsRef2 &   
)
inline

Definition at line 497 of file type_traits.h.

Referenced by iter_swap(), and TypeTraitsTest::reference_type().

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [1/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( bool  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [2/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( char  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [3/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( signed char  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [4/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( unsigned char  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [5/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( short  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [6/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( unsigned short  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [7/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( int  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [8/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( unsigned int  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [9/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( float  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [10/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( double  )

◆ _STLP_DEFINE_TYPE_TRAITS_FOR() [11/11]

_STLP_DEFINE_TYPE_TRAITS_FOR ( long double  )

◆ _UseTrivialCopy()

template<class _Src , class _Dst >
_TrivialCopy<_Src, _Dst> _UseTrivialCopy ( _Src *  ,
_Dst *   
)
inline

Definition at line 501 of file type_traits.h.

Referenced by __copy_aux(), and __copy_backward_aux().

◆ _UseTrivialInit()

template<class _Tp >
_TrivialInit<_Tp> _UseTrivialInit ( _Tp *  )
inline

Definition at line 541 of file type_traits.h.

Referenced by __uninitialized_init().

◆ _UseTrivialUCopy()

template<class _Src , class _Dst >
_TrivialUCopy<_Src, _Dst> _UseTrivialUCopy ( _Src *  ,
_Dst *   
)
inline

Definition at line 505 of file type_traits.h.

Referenced by __ucopy_aux().