35 #ifndef _BLAZE_MATH_CONSTRAINTS_VECVECSUBEXPR_H_ 36 #define _BLAZE_MATH_CONSTRAINTS_VECVECSUBEXPR_H_ 68 #define BLAZE_CONSTRAINT_MUST_BE_VECVECSUBEXPR_TYPE(T) \ 69 static_assert( ::blaze::IsVecVecSubExpr<T>::value, "Non-vector/vector subtraction expression type detected" ) 88 #define BLAZE_CONSTRAINT_MUST_NOT_BE_VECVECSUBEXPR_TYPE(T) \ 89 static_assert( !::blaze::IsVecVecSubExpr<T>::value, "Vector/vector subtraction expression type detected" ) 108 #define BLAZE_CONSTRAINT_MUST_FORM_VALID_VECVECSUBEXPR(T1,T2) \ 109 static_assert( ::blaze::And< ::blaze::Or< ::blaze::And< ::blaze::IsRowVector<T1> \ 110 , ::blaze::IsRowVector<T2> > \ 111 , ::blaze::And< ::blaze::IsColumnVector<T1> \ 112 , ::blaze::IsColumnVector<T2> > > \ 113 , ::blaze::Or< ::blaze::Equal< ::blaze::Size<T1,0UL>, ::blaze::PtrdiffT<-1L> > \ 114 , ::blaze::Equal< ::blaze::Size<T2,0UL>, ::blaze::PtrdiffT<-1L> > \ 115 , ::blaze::Equal< ::blaze::Size<T1,0UL>, ::blaze::Size<T2,0UL> > > \ 116 >::value, "Invalid vector/vector subtraction expression detected" ) Header file for the IsVecVecSubExpr type trait class.
Header file for the IsRowVector type trait.
Header file for the And class template.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
Header file for the Or class template.
Header file for the PtrdiffT class template.
Header file for the IsColumnVector type trait.
Header file for the Size type trait.
Header file for the Equal class template.