diff options
author | Claudius Holeksa <mail@keldu.de> | 2023-06-26 15:25:29 +0200 |
---|---|---|
committer | Claudius Holeksa <mail@keldu.de> | 2023-06-26 15:25:29 +0200 |
commit | 44b97c0c13c3cb05a5fed70326285b45bc7b37a6 (patch) | |
tree | bf26986e1b8f7415e4e3b72301cdde521efa5b6a /src/codec/data.h | |
parent | 9b5fdb05609c24a03d4e0e4386e9eadbfe6c5405 (diff) |
c++,codec: Added kelsimple array and struct decoding / encoding
Diffstat (limited to 'src/codec/data.h')
-rw-r--r-- | src/codec/data.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/codec/data.h b/src/codec/data.h index 5cb1267..a43fdd8 100644 --- a/src/codec/data.h +++ b/src/codec/data.h @@ -195,16 +195,18 @@ class data<schema::Array<T,Dim>, encode::Native> { SAW_DEFAULT_COPY(data); SAW_DEFAULT_MOVE(data); + data(const std::array<std::size_t, Dim>& i): + dims_{i}, + value_{} + { + value_.resize(get_full_size()); + } + template<std::integral... Dims> data(Dims... size_): - dims_{size_...}, - value_{} + data{{size_...}} { - for(auto& iter : dims_){ - assert(iter > 0); - } static_assert(sizeof...(Dims)==Dim, "Argument size must be equal to the Dimension"); - value_.resize(get_full_size()); } data<T, encode::Native>& at(const std::array<std::size_t, Dim>& ind){ |