summaryrefslogtreecommitdiff
path: root/src/codec/data.h
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2023-05-27 22:50:20 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2023-05-27 22:50:20 +0200
commit1c98c344ff539eec18f851ad2209e573d3b9a25e (patch)
tree699feeb9114e1fade14d599c36c3891ddaaa7522 /src/codec/data.h
parentaeab12f37ff49e596b3225fc3538450a7d753333 (diff)
Adding tuple
Diffstat (limited to 'src/codec/data.h')
-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: