summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-05-17 20:20:31 +0100
committerMaxime Coste <mawww@kakoune.org>2017-05-17 20:20:31 +0100
commita578c51bafe1839ccfb3bdc2f50c92bd167bc10c (patch)
tree69a508f1b788cac599ea3c5a910883227c2bbb8e /src
parenteec8239c788657858002559de96265697bc16a8b (diff)
Move constexpr compatible Array struct to meta.hh
Diffstat (limited to 'src')
-rw-r--r--src/enum.hh11
-rw-r--r--src/meta.hh12
2 files changed, 12 insertions, 11 deletions
diff --git a/src/enum.hh b/src/enum.hh
index ce3adb33..09e11ef0 100644
--- a/src/enum.hh
+++ b/src/enum.hh
@@ -6,17 +6,6 @@
namespace Kakoune
{
-template<typename T, size_t N>
-struct Array
-{
- constexpr size_t size() const { return N; }
- constexpr const T& operator[](int i) const { return m_data[i]; }
- constexpr const T* begin() const { return m_data; }
- constexpr const T* end() const { return m_data+N; }
-
- T m_data[N];
-};
-
template<typename T> struct EnumDesc { T value; StringView name; };
}
diff --git a/src/meta.hh b/src/meta.hh
index 768556eb..70a99428 100644
--- a/src/meta.hh
+++ b/src/meta.hh
@@ -9,6 +9,18 @@ inline namespace Meta
template<typename T> struct Type {};
}
+
+template<typename T, size_t N>
+struct Array
+{
+ constexpr size_t size() const { return N; }
+ constexpr const T& operator[](int i) const { return m_data[i]; }
+ constexpr const T* begin() const { return m_data; }
+ constexpr const T* end() const { return m_data+N; }
+
+ T m_data[N];
+};
+
}
#endif // meta_hh_INCLUDED