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 
43 #include <blaze/util/FalseType.h>
44 #include <blaze/util/TrueType.h>
45 
46 
47 namespace blaze {
48 
49 //=================================================================================================
50 //
51 // CLASS DEFINITION
52 //
53 //=================================================================================================
54 
55 //*************************************************************************************************
79 template< typename T >
80 struct IsInteger : public FalseType
81 {};
82 //*************************************************************************************************
83 
84 
85 //*************************************************************************************************
87 template<>
89 struct IsInteger<int> : public TrueType
90 {};
92 //*************************************************************************************************
93 
94 
95 //*************************************************************************************************
97 template<>
99 struct IsInteger<const int> : public TrueType
100 {};
102 //*************************************************************************************************
103 
104 
105 //*************************************************************************************************
107 template<>
109 struct IsInteger<volatile int> : public TrueType
110 {};
112 //*************************************************************************************************
113 
114 
115 //*************************************************************************************************
117 template<>
119 struct IsInteger<const volatile int> : public TrueType
120 {};
122 //*************************************************************************************************
123 
124 
125 //*************************************************************************************************
127 template<>
129 struct IsInteger<unsigned int> : public TrueType
130 {};
132 //*************************************************************************************************
133 
134 
135 //*************************************************************************************************
137 template<>
139 struct IsInteger<const unsigned int> : public TrueType
140 {};
142 //*************************************************************************************************
143 
144 
145 //*************************************************************************************************
147 template<>
149 struct IsInteger<volatile unsigned int> : public TrueType
150 {};
152 //*************************************************************************************************
153 
154 
155 //*************************************************************************************************
157 template<>
159 struct IsInteger<const volatile unsigned int> : public TrueType
160 {};
162 //*************************************************************************************************
163 
164 } // namespace blaze
165 
166 #endif
Header file for the FalseType type/value trait base class.
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:71
BoolConstant< true > TrueType
Type traits base class.The TrueType class is used as base class for type traits and value traits that...
Definition: TrueType.h:61
Compile time check for integer types.This type trait tests whether or not the given template paramete...
Definition: IsInteger.h:80
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Header file for the TrueType type/value trait base class.