35 #ifndef _BLAZE_MATH_TRAITS_DECLIDTRAIT_H_ 36 #define _BLAZE_MATH_TRAITS_DECLIDTRAIT_H_ 61 template<
typename >
struct DeclIdTrait;
62 template<
typename,
typename =
void >
struct DeclIdTraitEval;
69 template<
typename T >
70 auto evalDeclIdTrait( T& )
71 ->
typename DeclIdTraitEval<T>::Type;
73 template<
typename T >
74 auto evalDeclIdTrait(
const T& )
75 ->
typename DeclIdTrait<T>::Type;
77 template<
typename T >
78 auto evalDeclIdTrait(
const volatile T& )
79 ->
typename DeclIdTrait<T>::Type;
134 template<
typename MT >
140 using Type = decltype( evalDeclIdTrait( std::declval<MT&>() ) );
160 template<
typename MT >
170 template<
typename MT
172 struct DeclIdTraitEval
174 using Type = INVALID_TYPE;
185 template<
typename MT >
186 struct DeclIdTraitEval< MT
190 Size_v<MT,0UL> == Size_v<MT,1UL> ) > >
192 using Type = IdentityMatrix< typename MT::ElementType, StorageOrder_v<MT> >;
constexpr bool IsMatrix_v
Auxiliary variable template for the IsMatrix type trait.The IsMatrix_v variable template provides a c...
Definition: IsMatrix.h:139
typename DeclIdTrait< MT >::Type DeclIdTrait_t
Auxiliary alias declaration for the DeclIdTrait type trait.The DeclIdTrait_t alias declaration provid...
Definition: DeclIdTrait.h:161
Header file for all forward declarations for sparse vectors and matrices.
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
Base template for the DeclIdTrait class.
Definition: DeclIdTrait.h:135
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 StorageOrder type trait.
Header file for the Size type trait.