From d41e12adb776ac6f476381f34b5e8ccafcfd4e7b Mon Sep 17 00:00:00 2001 From: Sangwan Kwon Date: Wed, 20 Nov 2019 10:20:37 +0900 Subject: [PATCH] Revert "Support conversion between archive and string" This reverts commit dae502f799024c3b77afaea1c828f375f4301642. --- src/vist/archive.hpp | 20 ++++---------------- src/vist/common/tests/archive.cpp | 18 ------------------ 2 files changed, 4 insertions(+), 34 deletions(-) diff --git a/src/vist/archive.hpp b/src/vist/archive.hpp index 4086652..f1d525a 100644 --- a/src/vist/archive.hpp +++ b/src/vist/archive.hpp @@ -44,12 +44,6 @@ using IsArchival = typename std::enable_if::value, class Archive final { public: - explicit Archive() = default; - /// Use only when flatten data comes from Archive (by casting to string) - explicit Archive(const std::string& flatten) : buffer(flatten.cbegin(), flatten.cend()) - { - } - template void pack(const Front& front, const Rest&... rest); inline void pack(void) {} @@ -61,7 +55,7 @@ public: template void transform(std::tuple& tuple); - /// serialize method + // serialize method template = 0> Archive& operator<<(const T& value); template = 0> @@ -73,7 +67,7 @@ public: Archive& operator<<(const std::string& value); Archive& operator<<(const Archive& archive); - /// deserialize method + // deserialize method template = 0> Archive& operator>>(T& value); template = 0> @@ -89,15 +83,9 @@ public: std::size_t size(void) const noexcept; void reserve(std::size_t size) noexcept; - /// It is not safe when Archive includes binary formats. - operator std::string() const - { - return std::string(this->buffer.begin(), this->buffer.end()); - } - protected: - void save(const void* bytes, std::size_t size); - void load(void* bytes, std::size_t size); + virtual void save(const void* bytes, std::size_t size); + virtual void load(void* bytes, std::size_t size); private: template diff --git a/src/vist/common/tests/archive.cpp b/src/vist/common/tests/archive.cpp index 508eb83..ab8c69b 100644 --- a/src/vist/common/tests/archive.cpp +++ b/src/vist/common/tests/archive.cpp @@ -310,21 +310,3 @@ TEST(ArchiveTests, parameter_pack_transform_empty) Archive archive; archive.transform(tuple); } - -TEST(ArchiveTests, string_conversion) -{ - int input1 = std::numeric_limits::lowest(); - int input2 = std::numeric_limits::max(); - - Archive archive; - archive << input1 << input2; - - std::string flatten = archive; - Archive restore(flatten); - - int output1, output2; - restore >> output1 >> output2; - - EXPECT_EQ(input1, output1); - EXPECT_EQ(input2, output2); -} -- 2.34.1