35 #ifndef _BLAZE_MATH_TYPETRAITS_HASSUB_H_ 36 #define _BLAZE_MATH_TYPETRAITS_HASSUB_H_ 66 template<
typename T1,
typename T2,
typename =
void >
79 template<
typename T1,
typename T2 >
80 struct HasSubHelper< T1, T2,
Void_< decltype(
std::declval<T1>() - std::declval<T2>() ) > >
106 template<
typename T1,
typename T2,
typename =
void >
108 :
public HasSubHelper<T1,T2>
118 template<
typename T1,
typename T2 >
119 struct HasSub< T1, T2, EnableIf_< And< IsVector<T1>, IsVector<T2> > > >
120 :
public HasSub< typename T1::ElementType, typename T2::ElementType >
131 template<
typename T1,
typename T2 >
132 struct HasSub< T1, T2, EnableIf_< And< IsMatrix<T1>, IsMatrix<T2> > > >
133 :
public HasSub< typename T1::ElementType, typename T2::ElementType >
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 Void type trait.
Header file for the FalseType type/value trait base class.
Header file for the And class template.
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
Header file for the IsMatrix type trait.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
Header file for the IsVector type trait.
Header file for the EnableIf class template.
Availability of a subtraction operator for the given data types.This type trait provides the informat...
Definition: HasSub.h:107
void Void_
Compile time type check.This type trait maps an arbitrary sequence of types to the type void...
Definition: Void.h:64
Header file for the TrueType type/value trait base class.