diff options
author | Claudius "keldu" Holeksa <mail@keldu.de> | 2023-06-11 20:20:52 +0200 |
---|---|---|
committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2023-06-11 20:20:52 +0200 |
commit | 85398a9410a3ab36786c1e436986309ee6163f2f (patch) | |
tree | 7eb07905cdf63c8c1080219d0537baf1a75e5a71 /src/codec | |
parent | b84b576a221684a39ef12891bafd233ba6289b09 (diff) |
c++, codec-json: Added struct to json encoding and fixed a buffer bug on
the fly
Diffstat (limited to 'src/codec')
-rw-r--r-- | src/codec/data.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/codec/data.h b/src/codec/data.h index 63bc752..469e214 100644 --- a/src/codec/data.h +++ b/src/codec/data.h @@ -94,6 +94,17 @@ public: , encode::Native>& get(){ return std::get<parameter_key_pack_index<literal, literals...>::value>(value_); } + + template<string_literal literal> + const data< + typename parameter_pack_type< + parameter_key_pack_index< + literal, literals... + >::value + , T...>::type + , encode::Native>& get() const { + return std::get<parameter_key_pack_index<literal, literals...>::value>(value_); + } constexpr size_t size() const { return sizeof...(T); @@ -140,8 +151,12 @@ class data<schema::Array<T>, encode::Native> { data<T, encode::Native>& at(size_t i){ return value_.at(i); } + + const data<T, encode::Native>& at(size_t i) const { + return value_.at(i); + } - size_t size() const { return value_;} + size_t size() const { return value_.size();} }; template<> |