type_traits File Reference

#include <bits/c++config.h>
#include <tr1/type_traits_fwd.h>

Go to the source code of this file.

Namespaces

namespace  std
namespace  std::tr1

Classes

struct  std::tr1::__sfinae_types
struct  std::tr1::__sfinae_types::__two
struct  std::tr1::__in_array< _Tp >
struct  std::tr1::integral_constant< _Tp, __v >
 helper classes [4.3]. More...
struct  std::tr1::is_void<>
 primary type categories [4.5.1]. More...
struct  std::tr1::is_integral<>
struct  std::tr1::is_floating_point<>
struct  std::tr1::is_array<>
struct  std::tr1::is_array< _Tp[_Size]>
struct  std::tr1::is_array< _Tp[]>
struct  std::tr1::is_pointer<>
struct  std::tr1::is_reference<>
struct  std::tr1::is_reference< _Tp & >
struct  std::tr1::is_member_object_pointer<>
struct  std::tr1::is_union<>
struct  std::tr1::is_class<>
struct  std::tr1::is_function< _Tp >
struct  std::tr1::is_arithmetic< _Tp >
 composite type traits [4.5.2]. More...
struct  std::tr1::is_fundamental< _Tp >
struct  std::tr1::is_object< _Tp >
struct  std::tr1::is_scalar< _Tp >
struct  std::tr1::is_compound< _Tp >
struct  std::tr1::is_member_pointer< _Tp >
struct  std::tr1::__is_union_or_class_helper< _Tp >
struct  std::tr1::__is_union_or_class< _Tp >
struct  std::tr1::is_const<>
 type properties [4.5.3]. More...
struct  std::tr1::is_const < _Tp const >
struct  std::tr1::is_volatile<>
struct  std::tr1::is_volatile< _Tp volatile >
struct  std::tr1::is_pod< _Tp >
struct  std::tr1::__is_empty_helper< _Tp, >
struct  std::tr1::__is_empty_helper< _Tp, >::__first<>
struct  std::tr1::__is_empty_helper< _Tp, >::__second< _Up >
struct  std::tr1::__is_empty_helper< _Tp, true >
struct  std::tr1::is_empty< _Tp >
struct  std::tr1::__is_polymorphic_helper< _Tp, >
struct  std::tr1::__is_polymorphic_helper< _Tp, >::__first< _Up >
struct  std::tr1::__is_polymorphic_helper< _Tp, >::__second< _Up >
struct  std::tr1::__is_polymorphic_helper< _Tp, true >
struct  std::tr1::is_polymorphic< _Tp >
struct  std::tr1::is_abstract< _Tp >
struct  std::tr1::has_trivial_constructor< _Tp >
struct  std::tr1::has_trivial_copy< _Tp >
struct  std::tr1::has_trivial_assign< _Tp >
struct  std::tr1::has_trivial_destructor< _Tp >
struct  std::tr1::has_nothrow_constructor< _Tp >
struct  std::tr1::has_nothrow_copy< _Tp >
struct  std::tr1::has_nothrow_assign< _Tp >
struct  std::tr1::has_virtual_destructor<>
struct  std::tr1::is_signed<>
struct  std::tr1::is_unsigned<>
struct  std::tr1::alignment_of< _Tp >
struct  std::tr1::rank<>
struct  std::tr1::rank< _Tp[_Size]>
struct  std::tr1::rank< _Tp[]>
struct  std::tr1::extent<, >
struct  std::tr1::extent< _Tp[_Size], _Uint >
struct  std::tr1::extent< _Tp[], _Uint >
struct  std::tr1::is_same<, >
 relationships between types [4.6]. More...
struct  std::tr1::is_same< _Tp, _Tp >
struct  std::tr1::__is_base_of_helper< _Base, _Derived, >
struct  std::tr1::__is_base_of_helper< _Base, _Derived, >::_Conv
struct  std::tr1::__is_base_of_helper< _Base, _Derived, true >
struct  std::tr1::is_base_of< _Base, _Derived >
struct  std::tr1::__is_convertible_simple< _From, _To >
struct  std::tr1::__is_int_or_cref< _Tp >
struct  std::tr1::__is_convertible_helper< _From, _To, >
struct  std::tr1::__is_convertible_helper< _From, _To, true >
struct  std::tr1::is_convertible< _From, _To >
struct  std::tr1::remove_const< _Tp >
 const-volatile modifications [4.7.1]. More...
struct  std::tr1::remove_const < _Tp const >
struct  std::tr1::remove_volatile< _Tp >
struct  std::tr1::remove_volatile< _Tp volatile >
struct  std::tr1::remove_cv< _Tp >
struct  std::tr1::add_const< _Tp >
struct  std::tr1::add_volatile< _Tp >
struct  std::tr1::add_cv< _Tp >
struct  std::tr1::remove_reference< _Tp >
 reference modifications [4.7.2]. More...
struct  std::tr1::remove_reference< _Tp & >
struct  std::tr1::add_reference< _Tp >
struct  std::tr1::add_reference< _Tp & >
struct  std::tr1::remove_extent< _Tp >
 array modififications [4.7.3]. More...
struct  std::tr1::remove_extent< _Tp[_Size]>
struct  std::tr1::remove_extent< _Tp[]>
struct  std::tr1::remove_all_extents< _Tp >
struct  std::tr1::remove_all_extents< _Tp[_Size]>
struct  std::tr1::remove_all_extents< _Tp[]>
struct  std::tr1::remove_pointer< _Tp >
struct  std::tr1::add_pointer< _Tp >
struct  std::tr1::aligned_storage< size_t, size_t >
 other transformations [4.8]. More...
struct  std::tr1::aligned_storage< _Len, 1 >
union  std::tr1::aligned_storage< _Len, 1 >::type
struct  std::tr1::aligned_storage< _Len, 2 >
union  std::tr1::aligned_storage< _Len, 2 >::type
struct  std::tr1::aligned_storage< _Len, 4 >
union  std::tr1::aligned_storage< _Len, 4 >::type
struct  std::tr1::aligned_storage< _Len, 8 >
union  std::tr1::aligned_storage< _Len, 8 >::type
struct  std::tr1::aligned_storage< _Len, 16 >
union  std::tr1::aligned_storage< _Len, 16 >::type
struct  std::tr1::aligned_storage< _Len, 32 >
union  std::tr1::aligned_storage< _Len, 32 >::type

Defines

#define _TYPE_TRAITS   1
#define _DEFINE_SPEC_BODY(_Value)   : public integral_constant<bool, _Value> { };
 pointer modifications [4.7.4].
#define _DEFINE_SPEC_0_HELPER(_Spec, _Value)
#define _DEFINE_SPEC_1_HELPER(_Spec, _Value)
#define _DEFINE_SPEC_2_HELPER(_Spec, _Value)
#define _DEFINE_SPEC(_Order, _Trait, _Type, _Value)
#define _DEFINE_SPEC_BODY(_Value)   { typedef _Tp type; };
 pointer modifications [4.7.4].

Typedefs

typedef integral_constant<
bool, true > 
std::tr1::true_type
typedef integral_constant<
bool, false > 
std::tr1::false_type

Functions

 std::tr1::_DEFINE_SPEC (2, is_member_object_pointer, _Tp _Cp::*,!is_function< _Tp >::value) template< typename > struct is_member_function_pointer
 std::tr1::_DEFINE_SPEC (2, is_member_function_pointer, _Tp _Cp::*, is_function< _Tp >::value) template< typename _Tp > struct is_enum


Detailed Description

This is a TR1 C++ Library header.

Definition in file type_traits.


Define Documentation

#define _DEFINE_SPEC ( _Order,
_Trait,
_Type,
_Value   ) 

Value:

_DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type>, _Value)              \
  _DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type const>, _Value)        \
  _DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type volatile>, _Value)     \
  _DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type const volatile>, _Value)

Definition at line 84 of file type_traits.

#define _DEFINE_SPEC_0_HELPER ( _Spec,
_Value   ) 

Value:

template<>                                                         \
    struct _Spec                                                     \
    _DEFINE_SPEC_BODY(_Value)

Definition at line 69 of file type_traits.

#define _DEFINE_SPEC_1_HELPER ( _Spec,
_Value   ) 

Value:

template<typename _Tp>                                             \
    struct _Spec                                                     \
    _DEFINE_SPEC_BODY(_Value)

Definition at line 74 of file type_traits.

#define _DEFINE_SPEC_2_HELPER ( _Spec,
_Value   ) 

Value:

template<typename _Tp, typename _Cp>                               \
    struct _Spec                                                     \
    _DEFINE_SPEC_BODY(_Value)

Definition at line 79 of file type_traits.

#define _DEFINE_SPEC_BODY ( _Value   )     { typedef _Tp type; };

pointer modifications [4.7.4].

Definition at line 602 of file type_traits.

#define _DEFINE_SPEC_BODY ( _Value   )     : public integral_constant<bool, _Value> { };

pointer modifications [4.7.4].

Definition at line 602 of file type_traits.

#define _TYPE_TRAITS   1

Definition at line 35 of file type_traits.


Generated on Tue Feb 2 16:57:29 2010 for GNU C++ STL by  doxygen 1.4.7