Blaze  3.6
IsInteger.h
Go to the documentation of this file.
1 //=================================================================================================
33 //=================================================================================================
34 
35 #ifndef _BLAZE_UTIL_TYPETRAITS_ISINTEGER_H_
36 #define _BLAZE_UTIL_TYPETRAITS_ISINTEGER_H_
37 
38 
39 //*************************************************************************************************
40 // Includes
41 //*************************************************************************************************
42 
44 
45 
46 namespace blaze {
47 
48 //=================================================================================================
49 //
50 // CLASS DEFINITION
51 //
52 //=================================================================================================
53 
54 //*************************************************************************************************
78 template< typename T >
79 struct IsInteger
80  : public FalseType
81 {};
82 //*************************************************************************************************
83 
84 
85 //*************************************************************************************************
87 template<>
89 struct IsInteger<int>
90  : public TrueType
91 {};
93 //*************************************************************************************************
94 
95 
96 //*************************************************************************************************
98 template<>
100 struct IsInteger<const int>
101  : public TrueType
102 {};
104 //*************************************************************************************************
105 
106 
107 //*************************************************************************************************
109 template<>
111 struct IsInteger<volatile int>
112  : public TrueType
113 {};
115 //*************************************************************************************************
116 
117 
118 //*************************************************************************************************
120 template<>
122 struct IsInteger<const volatile int>
123  : public TrueType
124 {};
126 //*************************************************************************************************
127 
128 
129 //*************************************************************************************************
131 template<>
133 struct IsInteger<unsigned int>
134  : public TrueType
135 {};
137 //*************************************************************************************************
138 
139 
140 //*************************************************************************************************
142 template<>
144 struct IsInteger<const unsigned int>
145  : public TrueType
146 {};
148 //*************************************************************************************************
149 
150 
151 //*************************************************************************************************
153 template<>
155 struct IsInteger<volatile unsigned int>
156  : public TrueType
157 {};
159 //*************************************************************************************************
160 
161 
162 //*************************************************************************************************
164 template<>
166 struct IsInteger<const volatile unsigned int>
167  : public TrueType
168 {};
170 //*************************************************************************************************
171 
172 
173 //*************************************************************************************************
186 template< typename T >
188 //*************************************************************************************************
189 
190 } // namespace blaze
191 
192 #endif
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:72
BoolConstant< true > TrueType
Type traits base class.The TrueType class is used as base class for type traits and value traits that...
Definition: IntegralConstant.h:132
Compile time check for integer types.This type trait tests whether or not the given template paramete...
Definition: IsInteger.h:79
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
constexpr bool IsInteger_v
Auxiliary variable template for the IsInteger type trait.The IsInteger_v variable template provides a...
Definition: IsInteger.h:187
Header file for the IntegralConstant class template.