diff options
Diffstat (limited to 'modules/codec')
-rw-r--r-- | modules/codec/c++/schema.hpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/modules/codec/c++/schema.hpp b/modules/codec/c++/schema.hpp index c0fb66f..65d7158 100644 --- a/modules/codec/c++/schema.hpp +++ b/modules/codec/c++/schema.hpp @@ -201,6 +201,14 @@ struct Interface<Member<Function<Requests, Responses>,Names>...> { // NOLINTEND } // namespace schema +template<uint64_t I, typename Structural> +struct schema_type_at_index; + +template<uint64_t I, typename... Members> +struct schema_type_at_index<I, schema::Interface<Members...>> { + using Type = typename parameter_pack_type<I, Members...>::type; +}; + template<typename T, typename Schema> struct schema_has_member{ static_assert( |