Size.h
Go to the documentation of this file.
1 //=================================================================================================
33 //=================================================================================================
34 
35 #ifndef _BLAZE_UTIL_CONSTRAINTS_SIZE_H_
36 #define _BLAZE_UTIL_CONSTRAINTS_SIZE_H_
37 
38 
39 //*************************************************************************************************
40 // Includes
41 //*************************************************************************************************
42 
44 
45 
46 namespace blaze {
47 
48 //=================================================================================================
49 //
50 // MUST_HAVE_SIZE CONSTRAINT
51 //
52 //=================================================================================================
53 
54 //*************************************************************************************************
60 #define BLAZE_CONSTRAINT_MUST_HAVE_SIZE(T,S) \
61  static_assert( ::blaze::HasSize<T,S>::value, "Invalid size detected" )
62 //*************************************************************************************************
63 
64 
65 
66 
67 //=================================================================================================
68 //
69 // MUST_NOT_HAVE_SIZE CONSTRAINT
70 //
71 //=================================================================================================
72 
73 //*************************************************************************************************
79 #define BLAZE_CONSTRAINT_MUST_NOT_HAVE_SIZE(T,S) \
80  static_assert( !::blaze::HasSize<T,S>::value, "Invalid size detected" )
81 //*************************************************************************************************
82 
83 
84 
85 
86 //=================================================================================================
87 //
88 // MUST_HAVE_1_BYTE CONSTRAINT
89 //
90 //=================================================================================================
91 
92 //*************************************************************************************************
98 #define BLAZE_CONSTRAINT_MUST_HAVE_1_BYTE(T) \
99  static_assert( ::blaze::Has1Byte<T>::value, "Invalid size detected" )
100 //*************************************************************************************************
101 
102 
103 
104 
105 //=================================================================================================
106 //
107 // MUST_NOT_HAVE_1_BYTE CONSTRAINT
108 //
109 //=================================================================================================
110 
111 //*************************************************************************************************
117 #define BLAZE_CONSTRAINT_MUST_NOT_HAVE_1_BYTE(T) \
118  static_assert( !::blaze::Has1Byte<T>::value, "Invalid size detected" )
119 //*************************************************************************************************
120 
121 
122 
123 
124 //=================================================================================================
125 //
126 // MUST_HAVE_2_BYTES CONSTRAINT
127 //
128 //=================================================================================================
129 
130 //*************************************************************************************************
136 #define BLAZE_CONSTRAINT_MUST_HAVE_2_BYTES(T) \
137  static_assert( ::blaze::Has2Byte<T>::value, "Invalid size detected" )
138 //*************************************************************************************************
139 
140 
141 
142 
143 //=================================================================================================
144 //
145 // MUST_NOT_HAVE_2_BYTES CONSTRAINT
146 //
147 //=================================================================================================
148 
149 //*************************************************************************************************
155 #define BLAZE_CONSTRAINT_MUST_NOT_HAVE_2_BYTES(T) \
156  static_assert( !::blaze::Has2Byte<T>::value, "Invalid size detected" )
157 //*************************************************************************************************
158 
159 
160 
161 
162 //=================================================================================================
163 //
164 // MUST_HAVE_4_BYTES CONSTRAINT
165 //
166 //=================================================================================================
167 
168 //*************************************************************************************************
174 #define BLAZE_CONSTRAINT_MUST_HAVE_4_BYTES(T) \
175  static_assert( ::blaze::Has4Byte<T>::value, "Invalid size detected" )
176 //*************************************************************************************************
177 
178 
179 
180 
181 //=================================================================================================
182 //
183 // MUST_NOT_HAVE_4_BYTES CONSTRAINT
184 //
185 //=================================================================================================
186 
187 //*************************************************************************************************
193 #define BLAZE_CONSTRAINT_MUST_NOT_HAVE_4_BYTES(T) \
194  static_assert( !::blaze::Has4Byte<T>::value, "Invalid size detected" )
195 //*************************************************************************************************
196 
197 
198 
199 
200 //=================================================================================================
201 //
202 // MUST_HAVE_8_BYTES CONSTRAINT
203 //
204 //=================================================================================================
205 
206 
207 //*************************************************************************************************
213 #define BLAZE_CONSTRAINT_MUST_HAVE_8_BYTES(T) \
214  static_assert( ::blaze::Has8Byte<T>::value, "Invalid size detected" )
215 //*************************************************************************************************
216 
217 
218 
219 
220 //=================================================================================================
221 //
222 // MUST_NOT_HAVE_8_BYTES CONSTRAINT
223 //
224 //=================================================================================================
225 
226 //*************************************************************************************************
232 #define BLAZE_CONSTRAINT_MUST_NOT_HAVE_8_BYTES(T) \
233  static_assert( !::blaze::Has8Byte<T>::value, "Invalid size detected" )
234 //*************************************************************************************************
235 
236 } // namespace blaze
237 
238 #endif
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Header file for the HasSize type trait.