Make CTL definitions less ambiguous

This commit is contained in:
Justine Tunney 2024-07-01 03:48:28 -07:00
parent 239f8ce76e
commit acbabedf27
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
30 changed files with 176 additions and 173 deletions

View file

@ -7,67 +7,67 @@
namespace ctl {
template<typename T>
struct is_integral : false_type
struct is_integral : ctl::false_type
{};
template<>
struct is_integral<bool> : true_type
struct is_integral<bool> : ctl::true_type
{};
template<>
struct is_integral<char> : true_type
struct is_integral<char> : ctl::true_type
{};
template<>
struct is_integral<signed char> : true_type
struct is_integral<signed char> : ctl::true_type
{};
template<>
struct is_integral<unsigned char> : true_type
struct is_integral<unsigned char> : ctl::true_type
{};
template<>
struct is_integral<short> : true_type
struct is_integral<short> : ctl::true_type
{};
template<>
struct is_integral<unsigned short> : true_type
struct is_integral<unsigned short> : ctl::true_type
{};
template<>
struct is_integral<int> : true_type
struct is_integral<int> : ctl::true_type
{};
template<>
struct is_integral<unsigned int> : true_type
struct is_integral<unsigned int> : ctl::true_type
{};
template<>
struct is_integral<long> : true_type
struct is_integral<long> : ctl::true_type
{};
template<>
struct is_integral<unsigned long> : true_type
struct is_integral<unsigned long> : ctl::true_type
{};
template<>
struct is_integral<long long> : true_type
struct is_integral<long long> : ctl::true_type
{};
template<>
struct is_integral<unsigned long long> : true_type
struct is_integral<unsigned long long> : ctl::true_type
{};
template<>
struct is_integral<char16_t> : true_type
struct is_integral<char16_t> : ctl::true_type
{};
template<>
struct is_integral<char32_t> : true_type
struct is_integral<char32_t> : ctl::true_type
{};
template<>
struct is_integral<wchar_t> : true_type
struct is_integral<wchar_t> : ctl::true_type
{};
template<typename T>