aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/list/list.h8
-rw-r--r--src/type.h3
2 files changed, 11 insertions, 0 deletions
diff --git a/src/list/list.h b/src/list/list.h
index c03a0ef..66394fc 100644
--- a/src/list/list.h
+++ b/src/list/list.h
@@ -21,6 +21,14 @@ struct List<Head> {
typedef Cons<Head, void> type;
};
+template <
+ typename Type,
+ Type... Values
+>
+using ListOfType = List<
+ std::integral_constant<Type, Values>...
+>;
+
template <typename Cons>
using Head = Car<Cons>;
diff --git a/src/type.h b/src/type.h
index 76a1aae..9fc30e2 100644
--- a/src/type.h
+++ b/src/type.h
@@ -14,6 +14,9 @@ using Size = std::integral_constant<std::size_t, Value>;
template <bool Value>
using Boolean = std::integral_constant<bool, Value>;
+template <char Value>
+using Char = std::integral_constant<char, Value>;
+
template <
typename X,
typename Y