35#ifndef _BLAZE_MATH_CONSTRAINTS_TVECMATMULTEXPR_H_
36#define _BLAZE_MATH_CONSTRAINTS_TVECMATMULTEXPR_H_
64#define BLAZE_CONSTRAINT_MUST_BE_TVECMATMULTEXPR_TYPE(T) \
65 static_assert( ::blaze::IsTVecMatMultExpr_v<T>, "Non-vector/matrix multiplication expression type detected" )
84#define BLAZE_CONSTRAINT_MUST_NOT_BE_TVECMATMULTEXPR_TYPE(T) \
85 static_assert( !::blaze::IsTVecMatMultExpr_v<T>, "Vector/matrix multiplication expression type detected" )
104#define BLAZE_CONSTRAINT_MUST_FORM_VALID_TVECMATMULTEXPR(T1,T2) \
105 static_assert( ::blaze::IsRowVector_v<T1> && \
106 ::blaze::IsMatrix_v<T2> && \
107 ( ( ::blaze::Size_v<T1,0UL> == -1L ) || \
108 ( ::blaze::Size_v<T2,0UL> == -1L ) || \
109 ( ::blaze::Size_v<T1,0UL> == ::blaze::Size_v<T2,0UL> ) ) \
110 , "Invalid vector/matrix multiplication expression detected" )
Header file for the IsMatrix type trait.
Header file for the IsRowVector type trait.
Header file for the IsTVecMatMultExpr type trait class.
Header file for the Size type trait.