schema language
This commit is contained in:
parent
cb88ff9434
commit
a2f73db9d9
|
@ -1,19 +1,25 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <kelgin/string_literal.h>
|
||||||
|
|
||||||
namespace gin {
|
namespace gin {
|
||||||
namespace schema {
|
namespace schema {
|
||||||
template<typename... T>
|
|
||||||
struct Struct {
|
|
||||||
};
|
|
||||||
|
|
||||||
template<typename... T>
|
template <typename T, typename K> struct NamedMember;
|
||||||
struct Union {
|
|
||||||
};
|
|
||||||
|
|
||||||
template<typename... T>
|
template <typename T, typename C, C... Chars>
|
||||||
struct Array {
|
struct NamedMember<T, StringLiteral<C, C...>> {};
|
||||||
};
|
|
||||||
|
template <typename... T> struct Struct {};
|
||||||
|
|
||||||
|
template <typename... V, typename... K> struct Struct<NamedMember<V, K>...> {};
|
||||||
|
|
||||||
|
template <typename... T> struct Union {};
|
||||||
|
|
||||||
|
template <typename... V, typename... K> struct Union<NamedMember<V, K>...> {};
|
||||||
|
|
||||||
|
template <typename T> struct Array {};
|
||||||
|
|
||||||
struct String {};
|
struct String {};
|
||||||
}
|
} // namespace schema
|
||||||
}
|
} // namespace gin
|
||||||
|
|
Loading…
Reference in New Issue