12#include <bitsery/bitsery.h>
13#include <bitsery/adapter/stream.h>
14#include <bitsery/ext/std_tuple.h>
26template<
class RetType,
class... Args>
33 virtual std::ostream&
Write(std::ostream& os, Args... args)
override {
36 bitsery::Serializer<OutputAdapter> writer{ os };
39 (writer.object(args), ...);
40 writer.adapter().flush();
42 catch (
const std::exception& e) {
43 std::cerr <<
"Bitsery serialize error: " << e.what() << std::endl;
49 virtual std::istream&
Read(std::istream& is, Args&... args)
override {
51 bitsery::Deserializer<InputAdapter> reader{ is };
54 (reader.object(args), ...);
57 catch (
const std::exception& e) {
58 std::cerr <<
"Bitsery deserialize error: " << e.what() << std::endl;
Delegate serializer interface class.
std::is_const< std::remove_reference_t< T > > is_const_type
Definition bitsery/Serializer.h:21
virtual std::istream & Read(std::istream &is, Args &... args) override
Definition bitsery/Serializer.h:49
bitsery::OutputStreamAdapter OutputAdapter
Definition bitsery/Serializer.h:30
bitsery::InputStreamAdapter InputAdapter
Definition bitsery/Serializer.h:31
virtual std::ostream & Write(std::ostream &os, Args... args) override
Definition bitsery/Serializer.h:33
Definition bitsery/Serializer.h:24
Definition ISerializer.h:12