type_traits_fwd.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 #ifndef _TYPE_TRAITS_FWD_H
00036 #define _TYPE_TRAITS_FWD_H 1
00037
00038 #include <cstddef>
00039
00040
00041 namespace std
00042 {
00043 namespace tr1
00044 {
00045
00046 template<typename _Tp, _Tp __v>
00047 struct integral_constant;
00048 typedef integral_constant<bool, true> true_type;
00049 typedef integral_constant<bool, false> false_type;
00050
00051
00052 template<typename _Tp>
00053 struct is_void;
00054
00055 template<typename _Tp>
00056 struct is_integral;
00057
00058 template<typename _Tp>
00059 struct is_floating_point;
00060
00061 template<typename _Tp>
00062 struct is_array;
00063
00064 template<typename _Tp>
00065 struct is_pointer;
00066
00067 template<typename _Tp>
00068 struct is_reference;
00069
00070 template<typename _Tp>
00071 struct is_member_object_pointer;
00072
00073 template<typename _Tp>
00074 struct is_member_function_pointer;
00075
00076 template<typename _Tp>
00077 struct is_enum;
00078
00079 template<typename _Tp>
00080 struct is_union;
00081
00082 template<typename _Tp>
00083 struct is_class;
00084
00085 template<typename _Tp>
00086 struct is_function;
00087
00088
00089 template<typename _Tp>
00090 struct is_arithmetic;
00091
00092 template<typename _Tp>
00093 struct is_fundamental;
00094
00095 template<typename _Tp>
00096 struct is_object;
00097
00098 template<typename _Tp>
00099 struct is_scalar;
00100
00101 template<typename _Tp>
00102 struct is_compound;
00103
00104 template<typename _Tp>
00105 struct is_member_pointer;
00106
00107
00108 template<typename _Tp>
00109 struct __is_union_or_class;
00110
00111
00112 template<typename _Tp>
00113 struct is_const;
00114
00115 template<typename _Tp>
00116 struct is_volatile;
00117
00118 template<typename _Tp>
00119 struct is_pod;
00120
00121 template<typename _Tp>
00122 struct is_empty;
00123
00124 template<typename _Tp>
00125 struct is_polymorphic;
00126
00127 template<typename _Tp>
00128 struct is_abstract;
00129
00130 template<typename _Tp>
00131 struct has_trivial_constructor;
00132
00133 template<typename _Tp>
00134 struct has_trivial_copy;
00135
00136 template<typename _Tp>
00137 struct has_trivial_assign;
00138
00139 template<typename _Tp>
00140 struct has_trivial_destructor;
00141
00142 template<typename _Tp>
00143 struct has_nothrow_constructor;
00144
00145 template<typename _Tp>
00146 struct has_nothrow_copy;
00147
00148 template<typename _Tp>
00149 struct has_nothrow_assign;
00150
00151 template<typename _Tp>
00152 struct has_virtual_destructor;
00153
00154 template<typename _Tp>
00155 struct is_signed;
00156
00157 template<typename _Tp>
00158 struct is_unsigned;
00159
00160 template<typename _Tp>
00161 struct alignment_of;
00162
00163 template<typename _Tp>
00164 struct rank;
00165
00166 template<typename _Tp, unsigned _Uint = 0>
00167 struct extent;
00168
00169
00170 template<typename _Tp, typename _Up>
00171 struct is_same;
00172
00173 template<typename _From, typename _To>
00174 struct is_convertible;
00175
00176 template<typename _Base, typename _Derived>
00177 struct is_base_of;
00178
00179
00180 template<typename _Tp>
00181 struct remove_const;
00182
00183 template<typename _Tp>
00184 struct remove_volatile;
00185
00186 template<typename _Tp>
00187 struct remove_cv;
00188
00189 template<typename _Tp>
00190 struct add_const;
00191
00192 template<typename _Tp>
00193 struct add_volatile;
00194
00195 template<typename _Tp>
00196 struct add_cv;
00197
00198
00199 template<typename _Tp>
00200 struct remove_reference;
00201
00202 template<typename _Tp>
00203 struct add_reference;
00204
00205
00206 template<typename _Tp>
00207 struct remove_extent;
00208
00209 template<typename _Tp>
00210 struct remove_all_extents;
00211
00212
00213 template<typename _Tp>
00214 struct remove_pointer;
00215
00216 template<typename _Tp>
00217 struct add_pointer;
00218
00219
00220 template<std::size_t _Len, std::size_t _Align>
00221 struct aligned_storage;
00222 }
00223 }
00224
00225 #endif