Blaze 3.9
IsElements.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_TYPETRAITS_ISELEMENTS_H_
36#define _BLAZE_MATH_TYPETRAITS_ISELEMENTS_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
45
46
47namespace blaze {
48
49//=================================================================================================
50//
51// CLASS DEFINITION
52//
53//=================================================================================================
54
55//*************************************************************************************************
86template< typename T >
88 : public FalseType
89{};
90//*************************************************************************************************
91
92
93//*************************************************************************************************
98template< typename VT, bool TF, bool DF, typename... CEAs >
99struct IsElements< Elements<VT,TF,DF,CEAs...> >
100 : public TrueType
101{};
103//*************************************************************************************************
104
105
106//*************************************************************************************************
111template< typename VT, bool TF, bool DF, typename... CEAs >
112struct IsElements< const Elements<VT,TF,DF,CEAs...> >
113 : public TrueType
114{};
116//*************************************************************************************************
117
118
119//*************************************************************************************************
124template< typename VT, bool TF, bool DF, typename... CEAs >
125struct IsElements< volatile Elements<VT,TF,DF,CEAs...> >
126 : public TrueType
127{};
129//*************************************************************************************************
130
131
132//*************************************************************************************************
137template< typename VT, bool TF, bool DF, typename... CEAs >
138struct IsElements< const volatile Elements<VT,TF,DF,CEAs...> >
139 : public TrueType
140{};
142//*************************************************************************************************
143
144
145//*************************************************************************************************
158template< typename T >
160//*************************************************************************************************
161
162} // namespace blaze
163
164#endif
Header file for the IntegralConstant class template.
constexpr bool IsElements_v
Auxiliary variable template for the IsElements type trait.
Definition: IsElements.h:159
BoolConstant< true > TrueType
Type traits base class.
Definition: IntegralConstant.h:132
Header file for all forward declarations for views.
Generic wrapper for a compile time constant integral value.
Definition: IntegralConstant.h:74
Compile time check for element selections.
Definition: IsElements.h:89