35 #ifndef _BLAZE_UTIL_CONSTRAINTS_BUILTIN_H_
36 #define _BLAZE_UTIL_CONSTRAINTS_BUILTIN_H_
66 template<
bool >
struct CONSTRAINT_MUST_BE_BUILTIN_TYPE_FAILED;
67 template<>
struct CONSTRAINT_MUST_BE_BUILTIN_TYPE_FAILED<true> {
enum { value = 1 }; };
78 #define BLAZE_CONSTRAINT_MUST_BE_BUILTIN_TYPE(T) \
80 ::blaze::CONSTRAINT_TEST< \
81 ::blaze::CONSTRAINT_MUST_BE_BUILTIN_TYPE_FAILED< ::blaze::IsBuiltin<T>::value >::value > \
82 BLAZE_JOIN( CONSTRAINT_MUST_BE_BUILTIN_TYPE_TYPEDEF, __LINE__ )
104 template<
bool >
struct CONSTRAINT_MUST_NOT_BE_BUILTIN_TYPE_FAILED;
105 template<>
struct CONSTRAINT_MUST_NOT_BE_BUILTIN_TYPE_FAILED<true> {
enum { value = 1 }; };
116 #define BLAZE_CONSTRAINT_MUST_NOT_BE_BUILTIN_TYPE(T) \
118 ::blaze::CONSTRAINT_TEST< \
119 ::blaze::CONSTRAINT_MUST_NOT_BE_BUILTIN_TYPE_FAILED< !::blaze::IsBuiltin<T>::value >::value > \
120 BLAZE_JOIN( CONSTRAINT_MUST_NOT_BE_BUILTIN_TYPE_TYPEDEF, __LINE__ )
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Constraint wrapper class.
Header file for the IsBuiltin type trait.
Header file for compile time constraints.