From 04653742243e4bb6452108cfd0fef2f4afd8f23b Mon Sep 17 00:00:00 2001 From: rtk0c Date: Mon, 6 Sep 2021 00:15:35 -0700 Subject: Fix all compile errors, remove OperateIOProxy requirement from DataStream api --- core/src/Utils/IO/VectorIntegration.hpp | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) (limited to 'core/src/Utils/IO/VectorIntegration.hpp') diff --git a/core/src/Utils/IO/VectorIntegration.hpp b/core/src/Utils/IO/VectorIntegration.hpp index da663a4..3689505 100644 --- a/core/src/Utils/IO/VectorIntegration.hpp +++ b/core/src/Utils/IO/VectorIntegration.hpp @@ -1,6 +1,7 @@ #pragma once #include "Utils/IO/DataStream.hpp" +#include "Utils/IO/Helper.hpp" #include #include @@ -10,39 +11,31 @@ template struct Vector { template - static void ReadFromDataStream(InputDataStream& s, std::vector& vec) + static void ReadFromDataStream(InputDataStream& stream, std::vector& vec) { static_assert(std::is_default_constructible_v); static_assert(std::is_move_constructible_v); uint64_t size; - s.Read(size); + stream.Read(size); vec.clear(); vec.reserve(size); for (uint64_t i = 0; i < size; ++i) { TElement element; - if constexpr (std::is_same_v) { - s.ReadGeneric(element); - } else { - s.ReadObjectAdapted(element); - } + ReadHelper(stream, element); vec.push_back(std::move(element)); } } template - static void WriteToDataStream(OutputDataStream& s, const std::vector& vec) + static void WriteToDataStream(OutputDataStream& stream, const std::vector& vec) { - s.Write((uint64_t)vec.size()); + stream.Write((uint64_t)vec.size()); for (auto& element : vec) { - if constexpr (std::is_same_v) { - s.WriteGeneric(element); - } else { - s.WriteObjectAdapted(element); - } + WriteHelper(stream, element); } } }; -- cgit v1.2.3-70-g09d2