Blaze 3.9
VecTVecMultExpr.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_CONSTRAINTS_VECTVECMULTEXPR_H_
36#define _BLAZE_MATH_CONSTRAINTS_VECTVECMULTEXPR_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
46
47
48namespace blaze {
49
50//=================================================================================================
51//
52// MUST_BE_VECTVECMULTEXPR_TYPE CONSTRAINT
53//
54//=================================================================================================
55
56//*************************************************************************************************
63#define BLAZE_CONSTRAINT_MUST_BE_VECTVECMULTEXPR_TYPE(T) \
64 static_assert( ::blaze::IsVecTVecMultExpr_v<T>, "Non-outer product expression type detected" )
65//*************************************************************************************************
66
67
68
69
70//=================================================================================================
71//
72// MUST_NOT_BE_VECTVECMULTEXPR_TYPE CONSTRAINT
73//
74//=================================================================================================
75
76//*************************************************************************************************
83#define BLAZE_CONSTRAINT_MUST_NOT_BE_VECTVECMULTEXPR_TYPE(T) \
84 static_assert( !::blaze::IsVecTVecMultExpr_v<T>, "Outer product expression type detected" )
85//*************************************************************************************************
86
87
88
89
90//=================================================================================================
91//
92// MUST_FORM_VALID_VECTVECMULTEXPR CONSTRAINT
93//
94//=================================================================================================
95
96//*************************************************************************************************
103#define BLAZE_CONSTRAINT_MUST_FORM_VALID_VECTVECMULTEXPR(T1,T2) \
104 static_assert( ::blaze::IsColumnVector_v<T1> && \
105 ::blaze::IsRowVector_v<T2> \
106 , "Invalid vector/vector multiplication expression detected" )
107//*************************************************************************************************
108
109} // namespace blaze
110
111#endif
Header file for the IsColumnVector type trait.
Header file for the IsRowVector type trait.
Header file for the IsVecTVecMultExpr type trait class.