Blaze 3.9
IsSame.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_UTIL_TYPETRAITS_ISSAME_H_
36#define _BLAZE_UTIL_TYPETRAITS_ISSAME_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
45
46
47namespace blaze {
48
49//=================================================================================================
50//
51// CLASS DEFINITION
52//
53//=================================================================================================
54
55//*************************************************************************************************
74template< typename A, typename B >
76 : public FalseType
77{};
78//*************************************************************************************************
79
80
81//*************************************************************************************************
83
84template< typename T >
85struct IsStrictlySame<T,T>
86 : public TrueType
87{};
89//*************************************************************************************************
90
91
92//*************************************************************************************************
105template< typename A, typename B >
107//*************************************************************************************************
108
109
110
111
112//=================================================================================================
113//
114// CLASS DEFINITION
115//
116//=================================================================================================
117
118//*************************************************************************************************
138template< typename A, typename B >
139struct IsSame
140 : public BoolConstant< IsStrictlySame_v< RemoveCV_t<A>, RemoveCV_t<B> > >
141{};
142//*************************************************************************************************
143
144
145//*************************************************************************************************
158template< typename A, typename B >
160//*************************************************************************************************
161
162} // namespace blaze
163
164#endif
Header file for the IntegralConstant class template.
Header file for the RemoveCV type trait.
constexpr bool IsSame_v
Auxiliary variable template for the IsSame type trait.
Definition: IsSame.h:159
constexpr bool IsStrictlySame_v
Auxiliary variable template for the IsStrictlySame type trait.
Definition: IsSame.h:106
Generic wrapper for a compile time constant integral value.
Definition: IntegralConstant.h:74
Type relationship analysis.
Definition: IsSame.h:141
Compile time type relationship analysis.
Definition: IsSame.h:77