From a56610e205d5107e031dd168f332a194db19dda6 Mon Sep 17 00:00:00 2001 From: Danny Robson Date: Tue, 14 May 2019 13:01:23 +1000 Subject: [PATCH] types/description: add a bool specialisation --- types/description.cpp | 1 + types/description.hpp | 3 +++ 2 files changed, 4 insertions(+) diff --git a/types/description.cpp b/types/description.cpp index 3b1fa8c2..9e3f16b9 100644 --- a/types/description.cpp +++ b/types/description.cpp @@ -20,6 +20,7 @@ cruft::types::operator<< (std::ostream &os, cruft::types::category val) case category::UNSIGNED: return os << "UNSIGNED"; case category::SIGNED: return os << "SIGNED"; case category::REAL: return os << "REAL"; + case category::BOOL: return os << "BOOL"; } unreachable (); diff --git a/types/description.hpp b/types/description.hpp index 7a852883..716a3067 100644 --- a/types/description.hpp +++ b/types/description.hpp @@ -54,6 +54,7 @@ namespace cruft::types { UNSIGNED, SIGNED, REAL, + BOOL, }; @@ -106,6 +107,8 @@ namespace cruft::types { template <> struct category_traits : public std::integral_constant {}; template <> struct category_traits : public std::integral_constant {}; + template <> struct category_traits : public std::integral_constant {}; + template constexpr auto category_traits_v = category_traits::value;