Blaze  3.6
IsAssignable.h
Go to the documentation of this file.
1 //=================================================================================================
33 //=================================================================================================
34 
35 #ifndef _BLAZE_UTIL_TYPETRAITS_ISASSIGNABLE_H_
36 #define _BLAZE_UTIL_TYPETRAITS_ISASSIGNABLE_H_
37 
38 
39 //*************************************************************************************************
40 // Includes
41 //*************************************************************************************************
42 
43 #include <type_traits>
45 
46 
47 namespace blaze {
48 
49 //=================================================================================================
50 //
51 // CLASS ISASSIGNABLE
52 //
53 //=================================================================================================
54 
55 //*************************************************************************************************
70 template< typename T, typename U >
72  : public BoolConstant< std::is_assignable<T,U>::value >
73 {};
74 //*************************************************************************************************
75 
76 
77 //*************************************************************************************************
90 template< typename T, typename U >
92 //*************************************************************************************************
93 
94 
95 
96 
97 //=================================================================================================
98 //
99 // CLASS ISNOTHROWASSIGNABLE
100 //
101 //=================================================================================================
102 
103 //*************************************************************************************************
119 template< typename T, typename U >
121  : public BoolConstant< std::is_nothrow_assignable<T,U>::value >
122 {};
123 //*************************************************************************************************
124 
125 
126 //*************************************************************************************************
139 template< typename T, typename U >
141 //*************************************************************************************************
142 
143 
144 
145 
146 //=================================================================================================
147 //
148 // CLASS ISCOPYASSIGNABLE
149 //
150 //=================================================================================================
151 
152 //*************************************************************************************************
167 template< typename T >
169  : public BoolConstant< std::is_copy_assignable<T>::value >
170 {};
171 //*************************************************************************************************
172 
173 
174 //*************************************************************************************************
187 template< typename T >
189 //*************************************************************************************************
190 
191 
192 
193 
194 //=================================================================================================
195 //
196 // CLASS ISNOTHROWCOPYASSIGNABLE
197 //
198 //=================================================================================================
199 
200 //*************************************************************************************************
216 template< typename T >
218  : public BoolConstant< std::is_nothrow_copy_assignable<T>::value >
219 {};
220 //*************************************************************************************************
221 
222 
223 //*************************************************************************************************
236 template< typename T >
238 //*************************************************************************************************
239 
240 
241 
242 
243 //=================================================================================================
244 //
245 // CLASS ISMOVEASSIGNABLE
246 //
247 //=================================================================================================
248 
249 //*************************************************************************************************
264 template< typename T >
266  : public BoolConstant< std::is_move_assignable<T>::value >
267 {};
268 //*************************************************************************************************
269 
270 
271 //*************************************************************************************************
284 template< typename T >
286 //*************************************************************************************************
287 
288 
289 
290 
291 //=================================================================================================
292 //
293 // CLASS ISNOTHROWMOVEASSIGNABLE
294 //
295 //=================================================================================================
296 
297 //*************************************************************************************************
313 template< typename T >
315  : public BoolConstant< std::is_nothrow_move_assignable<T>::value >
316 {};
317 //*************************************************************************************************
318 
319 
320 //*************************************************************************************************
333 template< typename T >
335 //*************************************************************************************************
336 
337 } // namespace blaze
338 
339 #endif
constexpr bool IsNothrowAssignable_v
Auxiliary variable template for the IsNothrowAssignable type trait.The IsNothrowAssignable_v variable...
Definition: IsAssignable.h:140
constexpr bool IsAssignable_v
Auxiliary variable template for the IsAssignable type trait.The IsAssignable_v variable template prov...
Definition: IsAssignable.h:91
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:72
Compile time type check.The IsMoveAssignable type trait tests whether the expression.
Definition: IsAssignable.h:265
constexpr bool IsNothrowMoveAssignable_v
Auxiliary variable template for the IsNothrowMoveAssignable type trait.The IsNothrowMoveAssignable_v ...
Definition: IsAssignable.h:334
Compile time type check.The IsCopyAssignable type trait tests whether the expression.
Definition: IsAssignable.h:168
Compile time type check.The IsNothrowMoveAssignable type trait tests whether the expression.
Definition: IsAssignable.h:314
constexpr bool IsMoveAssignable_v
Auxiliary variable template for the IsMoveAssignable type trait.The IsMoveAssignable_v variable templ...
Definition: IsAssignable.h:285
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
constexpr bool IsNothrowCopyAssignable_v
Auxiliary variable template for the IsNothrowCopyAssignable type trait.The IsNothrowCopyAssignable_v ...
Definition: IsAssignable.h:237
Compile time type check.The IsNothrowAssignable type trait tests whether the expression.
Definition: IsAssignable.h:120
constexpr bool IsCopyAssignable_v
Auxiliary variable template for the IsCopyAssignable type trait.The IsCopyAssignable_v variable templ...
Definition: IsAssignable.h:188
Compile time type check.The IsAssignable type trait tests whether the expression.
Definition: IsAssignable.h:71
Header file for the IntegralConstant class template.
Compile time type check.The IsNothrowCopyAssignable type trait tests whether the expression.
Definition: IsAssignable.h:217