Blaze 3.9
IsValid.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_UTIL_TYPETRAITS_ISVALID_H_
36#define _BLAZE_UTIL_TYPETRAITS_ISVALID_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
45
46
47namespace blaze {
48
49//=================================================================================================
50//
51// CLASS DEFINITION
52//
53//=================================================================================================
54
55//*************************************************************************************************
74template< typename T >
75struct IsValid
76 : public TrueType
77{};
78//*************************************************************************************************
79
80
81//*************************************************************************************************
83
84template<>
85struct IsValid<INVALID_TYPE>
86 : public FalseType
87{};
89//*************************************************************************************************
90
91
92//*************************************************************************************************
94
95template<>
96struct IsValid<const INVALID_TYPE>
97 : public FalseType
98{};
100//*************************************************************************************************
101
102
103//*************************************************************************************************
105
106template<>
107struct IsValid<volatile INVALID_TYPE>
108 : public FalseType
109{};
111//*************************************************************************************************
112
113
114//*************************************************************************************************
116
117template<>
118struct IsValid<const volatile INVALID_TYPE>
119 : public FalseType
120{};
122//*************************************************************************************************
123
124
125//*************************************************************************************************
138template< typename T >
140//*************************************************************************************************
141
142} // namespace blaze
143
144#endif
Header file for the IntegralConstant class template.
Utility type for generic codes.
constexpr bool IsValid_v
Auxiliary variable template for the IsValid type trait.
Definition: IsValid.h:139
BoolConstant< false > FalseType
Type/value traits base class.
Definition: IntegralConstant.h:121
Generic wrapper for a compile time constant integral value.
Definition: IntegralConstant.h:74
Compile time type check.
Definition: IsValid.h:77