aboutsummaryrefslogtreecommitdiff
path: root/core/src/Utils/IO/VectorIntegration.hpp
diff options
context:
space:
mode:
authorrtk0c <[email protected]>2021-09-06 00:15:35 -0700
committerrtk0c <[email protected]>2021-09-06 00:15:35 -0700
commit04653742243e4bb6452108cfd0fef2f4afd8f23b (patch)
treea4a5e0cc8d16ffe78859fab9ee5e487a7d22d81e /core/src/Utils/IO/VectorIntegration.hpp
parent70e00f817e9596a746800ba4afec2b7c4ca25142 (diff)
Fix all compile errors, remove OperateIOProxy requirement from DataStream api
Diffstat (limited to 'core/src/Utils/IO/VectorIntegration.hpp')
-rw-r--r--core/src/Utils/IO/VectorIntegration.hpp21
1 files changed, 7 insertions, 14 deletions
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 <type_traits>
#include <vector>
@@ -10,39 +11,31 @@ template <class TAdapter = void>
struct Vector
{
template <class TElement>
- static void ReadFromDataStream(InputDataStream& s, std::vector<TElement>& vec)
+ static void ReadFromDataStream(InputDataStream& stream, std::vector<TElement>& vec)
{
static_assert(std::is_default_constructible_v<TElement>);
static_assert(std::is_move_constructible_v<TElement>);
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<TAdapter, void>) {
- s.ReadGeneric(element);
- } else {
- s.ReadObjectAdapted<TAdapter>(element);
- }
+ ReadHelper<TAdapter>(stream, element);
vec.push_back(std::move(element));
}
}
template <class TElement>
- static void WriteToDataStream(OutputDataStream& s, const std::vector<TElement>& vec)
+ static void WriteToDataStream(OutputDataStream& stream, const std::vector<TElement>& vec)
{
- s.Write((uint64_t)vec.size());
+ stream.Write((uint64_t)vec.size());
for (auto& element : vec) {
- if constexpr (std::is_same_v<TAdapter, void>) {
- s.WriteGeneric(element);
- } else {
- s.WriteObjectAdapted<TAdapter>(element);
- }
+ WriteHelper<TAdapter>(stream, element);
}
}
};