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 DEFINITIONS
52 //
53 //=================================================================================================
54 
55 //*************************************************************************************************
70 template< typename T, typename U >
72  : public BoolConstant< std::is_assignable<T,U>::value >
73 {};
74 //*************************************************************************************************
75 
76 
77 //*************************************************************************************************
93 template< typename T, typename U >
95  : public BoolConstant< std::is_nothrow_assignable<T,U>::value >
96 {};
97 //*************************************************************************************************
98 
99 
100 //*************************************************************************************************
115 template< typename T >
117  : public BoolConstant< std::is_copy_assignable<T>::value >
118 {};
119 //*************************************************************************************************
120 
121 
122 //*************************************************************************************************
138 template< typename T >
140  : public BoolConstant< std::is_nothrow_copy_assignable<T>::value >
141 {};
142 //*************************************************************************************************
143 
144 
145 //*************************************************************************************************
160 template< typename T >
162  : public BoolConstant< std::is_move_assignable<T>::value >
163 {};
164 //*************************************************************************************************
165 
166 
167 //*************************************************************************************************
183 template< typename T >
185  : public BoolConstant< std::is_nothrow_move_assignable<T>::value >
186 {};
187 //*************************************************************************************************
188 
189 } // namespace blaze
190 
191 #endif
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:71
Compile time type check.The IsMoveAssignable type trait tests whether the expression.
Definition: IsAssignable.h:161
Compile time type check.The IsCopyAssignable type trait tests whether the expression.
Definition: IsAssignable.h:116
Compile time type check.The IsNothrowMoveAssignable type trait tests whether the expression.
Definition: IsAssignable.h:184
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Compile time type check.The IsNothrowAssignable type trait tests whether the expression.
Definition: IsAssignable.h:94
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:139