forked from OSchip/llvm-project
17 lines
459 B
C++
17 lines
459 B
C++
template <class T, T v>
|
|
struct integral_constant {
|
|
static constexpr T value = v;
|
|
typedef T value_type;
|
|
typedef integral_constant type; // using injected-class-name
|
|
constexpr operator value_type() const noexcept { return value; }
|
|
};
|
|
|
|
using false_type = integral_constant<bool, false>;
|
|
using true_type = integral_constant<bool, true>;
|
|
|
|
template <class T, class U>
|
|
struct is_same : false_type {};
|
|
|
|
template <class T>
|
|
struct is_same<T, T> : true_type {};
|