From 73fac05aa07a0dd16f7061baddd4b934c7855fed Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Sat, 10 Jun 2023 23:45:17 +0200 Subject: c++: Setting up testing progress --- src/codec-json/json.tmpl.h | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/codec-json/json.tmpl.h') diff --git a/src/codec-json/json.tmpl.h b/src/codec-json/json.tmpl.h index 3699e10..a19e3dc 100644 --- a/src/codec-json/json.tmpl.h +++ b/src/codec-json/json.tmpl.h @@ -5,23 +5,23 @@ namespace saw { namespace impl { template -class json_encode_impl { +class json_encode { static_assert(always_false, "This schema type is not being handle by the json encoding."); }; template -class json_encode_impl, RootSchema, FromEncode> { - static ErrorOr encode(const data& from, data& to, size_t ptr) { +struct json_encode, RootSchema, FromEncode> { + static error_or encode(const data, FromEncode>& from, data, encode::Json>& to) { auto val = from.get(); std::array data; - auto tc_result = std::to_chars(reinterpret_cast(data.data()), reinrepret_cast(data.data())+data.size(), val); + auto tc_result = std::to_chars(reinterpret_cast(data.data()), reinterpret_cast(data.data())+data.size(), val); if(tc_result.ec != std::errc{}){ return make_error(); } size_t bytes_written = 0; - for(auto ptr = data.data(); ptr != tc_result.ptr; ++ptr){ + for(char* ptr = reinterpret_cast(data.data()); ptr != tc_result.ptr; ++ptr){ ++bytes_written; } @@ -31,11 +31,12 @@ class json_encode_impl, RootSchema, FromEncode> { return std::move(err); } - for(auto ptr = data.data(); ptr != tc_result.ptr; ++ptr){ - buff.push(ptr[0]); + for(char* ptr = reinterpret_cast(data.data()); ptr != tc_result.ptr; ++ptr){ + uint8_t* un_ptr = reinterpret_cast(ptr); + buff.push(un_ptr[0]); } - return Void{}; + return void_t{}; } }; } -- cgit v1.2.3