From 8f0dda5eab181b0f14f2652b4e984aaaae3f258c Mon Sep 17 00:00:00 2001 From: rtk0c Date: Mon, 27 Jun 2022 18:27:13 -0700 Subject: Start from a clean slate --- core/src/Utils/IO/Helper.hpp | 43 ------------------------------------------- 1 file changed, 43 deletions(-) delete mode 100644 core/src/Utils/IO/Helper.hpp (limited to 'core/src/Utils/IO/Helper.hpp') diff --git a/core/src/Utils/IO/Helper.hpp b/core/src/Utils/IO/Helper.hpp deleted file mode 100644 index ebd47a7..0000000 --- a/core/src/Utils/IO/Helper.hpp +++ /dev/null @@ -1,43 +0,0 @@ -#pragma once - -#include "Utils/IO/DataStream.hpp" - -namespace DataStreamAdapters { - -/// Helper to invoke either Read() or ReadObject(). -/// This is intended for writing IO adapters, users that's writing IO logic shouldn't using this - it increases compile time while reducing readability. -template -void ReadHelper(InputDataStream& stream, T& t) -{ - if constexpr (!std::is_same_v) { - stream.ReadObjectAdapted(t); - } else if constexpr (requires(T tt, InputDataStream ss) { ss.Read(tt); }) { - stream.Read(t); - } else if constexpr (requires(T tt, InputDataStream ss) { ss.ReadEnum(tt); }) { - stream.ReadEnum(t); - } else if constexpr (requires(T tt, InputDataStream ss) { ss.ReadObject(tt); }) { - stream.ReadObject(t); - } else { - static_assert(false && sizeof(T), "This type is neither a 'value' nor an 'object'."); - } -} - -/// Helper to invoke either Write() or WriteObject(). -/// This is intended for writing IO adapters, users that's writing IO logic shouldn't using this - it increases compile time while reducing readability. -template -void WriteHelper(OutputDataStream& stream, T& t) -{ - if constexpr (!std::is_same_v) { - stream.WriteObjectAdapted(t); - } else if constexpr (requires(T tt, OutputDataStream ss) { ss.Write(tt); }) { - stream.Write(t); - } else if constexpr (requires(T tt, OutputDataStream ss) { ss.WriteEnum(tt); }) { - stream.WriteEnum(t); - } else if constexpr (requires(T tt, OutputDataStream ss) { ss.WriteObject(tt); }) { - stream.WriteObject(t); - } else { - static_assert(false && sizeof(T), "This type is neither a 'value' nor an 'object'."); - } -} - -} // namespace DataStreamAdapters -- cgit v1.2.3-70-g09d2