35 #ifndef _BLAZE_MATH_TYPETRAITS_ISSUBEXPR_H_ 36 #define _BLAZE_MATH_TYPETRAITS_ISSUBEXPR_H_ 61 template<
typename T >
62 struct IsSubExprHelper
68 template<
typename U >
69 static TrueType test(
const SubExpr<U>* );
71 template<
typename U >
72 static TrueType test(
const volatile SubExpr<U>* );
79 using Type = decltype( test( create() ) );
98 template<
typename T >
100 :
public IsSubExprHelper<T>::Type
110 template<
typename T >
131 template<
typename T >
BoolConstant< false > FalseType
Type/value traits base class.The FalseType class is used as base class for type traits and value trai...
Definition: FalseType.h:61
Header file for the FalseType type/value trait base class.
Generic wrapper for a compile time constant integral value.The IntegralConstant class template repres...
Definition: IntegralConstant.h:71
Header file for the SubExpr base class.
BoolConstant< true > TrueType
Type traits base class.The TrueType class is used as base class for type traits and value traits that...
Definition: TrueType.h:61
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
constexpr bool IsSubExpr_v
Auxiliary variable template for the IsSubExpr type trait.The IsSubExpr_v variable template provides a...
Definition: IsSubExpr.h:132
Compile time check whether the given type is a subtraction expression template.This type trait class ...
Definition: IsSubExpr.h:99
Header file for the TrueType type/value trait base class.