35#ifndef _BLAZE_MATH_TYPETRAITS_HASMAX_H_
36#define _BLAZE_MATH_TYPETRAITS_HASMAX_H_
64template<
typename T1,
typename T2,
typename =
void >
77template<
typename T1,
typename T2 >
78struct HasMaxHelper< T1, T2,
Void_t< decltype(
max( std::declval<T1>(), std::declval<T2>() ) ) > >
105template<
typename T1,
typename T2,
typename =
void >
107 :
public HasMaxHelper<T1,T2>
117template<
typename T >
118struct HasMax< complex<T>, complex<T> >
130template<
typename T1,
typename T2 >
132 :
public HasMax< typename T1::ElementType, typename T2::ElementType >
151template<
typename T1,
typename T2 >
Header file for the complex data type.
Header file for the EnableIf class template.
Header file for the IntegralConstant class template.
Header file for the IsVector type trait.
decltype(auto) max(const DenseMatrix< MT1, SO1 > &lhs, const DenseMatrix< MT2, SO2 > &rhs)
Computes the componentwise maximum of the dense matrices lhs and rhs.
Definition: DMatDMatMapExpr.h:1375
constexpr bool HasMax_v
Auxiliary variable template for the HasMax type trait.
Definition: HasMax.h:152
constexpr bool IsVector_v
Auxiliary variable template for the IsVector type trait.
Definition: IsVector.h:125
void Void_t
Compile time type check.
Definition: Void.h:64
BoolConstant< true > TrueType
Type traits base class.
Definition: IntegralConstant.h:132
BoolConstant< false > FalseType
Type/value traits base class.
Definition: IntegralConstant.h:121
typename EnableIf< Condition, T >::Type EnableIf_t
Auxiliary type for the EnableIf class template.
Definition: EnableIf.h:138
Availability of a max() operation for the given data types.
Definition: HasMax.h:108
Generic wrapper for a compile time constant integral value.
Definition: IntegralConstant.h:74
Header file for the Void type trait.