Skip to content

Commit bd1d846

Browse files
committed
Add std::conditional impl to type traits
1 parent 684b823 commit bd1d846

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/bc_type_traits.h

+12-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
#include <type_traits>
1313

1414
namespace bc
15-
{
15+
{
1616
template<typename T, T v>
1717
struct integral_constant
1818
{
@@ -146,7 +146,18 @@ namespace bc
146146
return cref(arg.get());
147147
}
148148

149+
// conditional
150+
template<bool flag, typename TrueType, typename FalseType>
151+
struct conditional
152+
{
153+
typedef TrueType type;
154+
};
149155

156+
template<typename TrueType, typename FalseType>
157+
struct conditional<false, TrueType, FalseType>
158+
{
159+
typedef FalseType type;
160+
};
150161
}
151162

152163

0 commit comments

Comments
 (0)