35 #ifndef _BLAZE_MATH_TRAITS_DECLDIAGEXPRTRAIT_H_ 36 #define _BLAZE_MATH_TRAITS_DECLDIAGEXPRTRAIT_H_ 68 template<
typename T >
74 struct Failure {
using Type = INVALID_TYPE; };
80 struct Result {
using Type = decltype(
decldiag( std::declval<T>() ) ); };
109 template<
typename T >
decltype(auto) decldiag(const DenseMatrix< MT, SO > &dm)
Declares the given dense matrix expression dm as diagonal.
Definition: DMatDeclDiagExpr.h:996
Header file for the IsMatrix type trait.
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Header file for the If class template.
typename DeclDiagExprTrait< T >::Type DeclDiagExprTrait_
Auxiliary alias declaration for the DeclDiagExprTrait class template.The DeclDiagExprTrait_ alias dec...
Definition: DeclDiagExprTrait.h:110
Utility type for generic codes.
typename If< T1, T2, T3 >::Type If_
Auxiliary alias declaration for the If class template.The If_ alias declaration provides a convenient...
Definition: If.h:154
Header file for the RemoveReference type trait.
Evaluation of the return type of a diagonal declaration (decldiag) expression.Via this type trait it ...
Definition: DeclDiagExprTrait.h:69