22 #ifndef _BLAZE_MATH_TYPETRAITS_ISMATMATADDEXPR_H_
23 #define _BLAZE_MATH_TYPETRAITS_ISMATMATADDEXPR_H_
30 #include <boost/type_traits/remove_cv.hpp>
49 template<
typename T >
50 struct IsMatMatAddExprHelper
64 template<
typename MT1,
typename MT2,
bool SO >
65 struct IsMatMatAddExprHelper< DMatDMatAddExpr<MT1,MT2,SO> > :
public TrueType
80 template<
typename MT1,
typename MT2,
bool SO >
81 struct IsMatMatAddExprHelper< DMatSMatAddExpr<MT1,MT2,SO> > :
public TrueType
96 template<
typename MT1,
typename MT2 >
97 struct IsMatMatAddExprHelper< DMatTDMatAddExpr<MT1,MT2> > :
public TrueType
112 template<
typename MT1,
typename MT2 >
113 struct IsMatMatAddExprHelper< DMatTSMatAddExpr<MT1,MT2> > :
public TrueType
128 template<
typename MT1,
typename MT2 >
129 struct IsMatMatAddExprHelper< SMatSMatAddExpr<MT1,MT2> > :
public TrueType
144 template<
typename MT1,
typename MT2 >
145 struct IsMatMatAddExprHelper< SMatTSMatAddExpr<MT1,MT2> > :
public TrueType
160 template<
typename MT1,
typename MT2 >
161 struct IsMatMatAddExprHelper< TDMatSMatAddExpr<MT1,MT2> > :
public TrueType
176 template<
typename MT1,
typename MT2 >
177 struct IsMatMatAddExprHelper< TSMatTSMatAddExpr<MT1,MT2> > :
public TrueType
199 template<
typename T >
200 struct IsMatMatAddExpr :
public IsMatMatAddExprHelper< typename boost::remove_cv<T>::type >::Type
205 enum { value = IsMatMatAddExprHelper< typename boost::remove_cv<T>::type >::value };
206 typedef typename IsMatMatAddExprHelper< typename boost::remove_cv<T>::type >::Type Type;