summaryrefslogtreecommitdiff
path: root/src/codec
diff options
context:
space:
mode:
Diffstat (limited to 'src/codec')
-rw-r--r--src/codec/data.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/codec/data.h b/src/codec/data.h
index bd9a4b2..c1ff9fa 100644
--- a/src/codec/data.h
+++ b/src/codec/data.h
@@ -94,6 +94,21 @@ public:
}
};
+template<typename... T>
+class data<schema::Tuple, encode::Native> {
+private:
+ std::tuple<data<T,encode::Native>> value_;
+public:
+ template<size_t i>
+ data<typename parameter_pack_type<i>::type, encode::Native>& get(){
+ return std::get<i>();
+ }
+
+ constexpr size_t size() const {
+ return sizeof...(T);
+ }
+};
+
template<typename T>
class data<schema::Array<T>, encode::Native> {
private: