diff options
Diffstat (limited to 'modules/codec/c++/schema_meta.hpp')
-rw-r--r-- | modules/codec/c++/schema_meta.hpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/codec/c++/schema_meta.hpp b/modules/codec/c++/schema_meta.hpp index a37197a..9b111e3 100644 --- a/modules/codec/c++/schema_meta.hpp +++ b/modules/codec/c++/schema_meta.hpp @@ -15,6 +15,12 @@ struct meta_schema<schema::Void> { using MetaSchema = schema::Void; }; +template<> +struct meta_schema<schema::Bool> { + using Schema = schema::Bool; + using MetaSchema = schema::Void; +}; + template<typename T, uint64_t N> struct meta_schema<schema::Primitive<T,N>> { using MetaSchema = schema::Void; @@ -27,6 +33,12 @@ struct meta_schema<schema::MixedPrecision<schema::Primitive<TA,NA>, schema::Prim using MetaSchema = schema::Void; }; +template<typename Key, typename Value> +struct meta_schema<schema::Map<Key,Value>> { + using MetaSchema = schema::Void; + using Schema = schema::Map<Key,Value>; +}; + template<typename... T, string_literal... Lit> struct meta_schema<schema::Struct<schema::Member<T,Lit>...>> { using MetaSchema = schema::Struct<schema::Member<typename meta_schema<T>::MetaSchema,Lit>...>; |