35 #ifndef _BLAZE_MATH_TRAITS_DECLUPPTRAIT_H_ 36 #define _BLAZE_MATH_TRAITS_DECLUPPTRAIT_H_ 60 template<
typename >
struct DeclUppTrait;
61 template<
typename,
typename =
void >
struct DeclUppTraitEval;
68 template<
typename T >
69 auto evalDeclUppTrait( T& )
70 ->
typename DeclUppTraitEval<T>::Type;
72 template<
typename T >
73 auto evalDeclUppTrait(
const T& )
74 ->
typename DeclUppTrait<T>::Type;
76 template<
typename T >
77 auto evalDeclUppTrait(
const volatile T& )
78 ->
typename DeclUppTrait<T>::Type;
133 template<
typename MT >
139 using Type = decltype( evalDeclUppTrait( std::declval<MT&>() ) );
159 template<
typename MT >
169 template<
typename MT
171 struct DeclUppTraitEval
173 using Type = INVALID_TYPE;
184 template<
typename MT >
185 struct DeclUppTraitEval< MT
189 Size_v<MT,0UL> == Size_v<MT,1UL> ) > >
191 using Type = UpperMatrix<typename MT::ResultType>;
constexpr bool IsMatrix_v
Auxiliary variable template for the IsMatrix type trait.The IsMatrix_v variable template provides a c...
Definition: IsMatrix.h:138
Base template for the DeclUppTrait class.
Definition: DeclUppTrait.h:134
Header file for the IsMatrix type trait.
typename EnableIf< Condition, T >::Type EnableIf_t
Auxiliary type for the EnableIf class template.The EnableIf_t alias declaration provides a convenient...
Definition: EnableIf.h:138
Namespace of the Blaze C++ math library.
Definition: Blaze.h:58
Utility type for generic codes.
constexpr ptrdiff_t DefaultSize_v
Default size of the Size type trait.
Definition: Size.h:72
Header file for the implementation of the base template of the UpperMatrix.
typename DeclUppTrait< MT >::Type DeclUppTrait_t
Auxiliary alias declaration for the DeclUppTrait type trait.The DeclUppTrait_t alias declaration prov...
Definition: DeclUppTrait.h:160
Header file for the Size type trait.