35#ifndef _BLAZE_MATH_TRAITS_DECLSYMTRAIT_H_
36#define _BLAZE_MATH_TRAITS_DECLSYMTRAIT_H_
60template<
typename >
struct DeclSymTrait;
61template<
typename,
typename =
void >
struct DeclSymTraitEval;
69auto evalDeclSymTrait(
const volatile T& ) -> DeclSymTraitEval<T>;
123template<
typename MT >
125 :
public decltype( evalDeclSymTrait( std::declval<MT&>() ) )
143template<
typename MT >
155struct DeclSymTraitEval
166template<
typename MT >
167struct DeclSymTraitEval< MT
171 Size_v<MT,0UL> == Size_v<MT,1UL> ) > >
173 using Type = SymmetricMatrix<typename MT::ResultType>;
Header file for the EnableIf class template.
Header file for the IsMatrix type trait.
Header file for the implementation of the base template of the SymmetricMatrix.
typename DeclSymTrait< MT >::Type DeclSymTrait_t
Auxiliary alias declaration for the DeclSymTrait type trait.
Definition: DeclSymTrait.h:144
constexpr ptrdiff_t DefaultSize_v
Default size of the Size type trait.
Definition: Size.h:72
constexpr bool IsMatrix_v
Auxiliary variable template for the IsMatrix type trait.
Definition: IsMatrix.h:124
typename EnableIf< Condition, T >::Type EnableIf_t
Auxiliary type for the EnableIf class template.
Definition: EnableIf.h:138
Header file for the Size type trait.
Base template for the DeclSymTrait class.
Definition: DeclSymTrait.h:126