diff --git a/lib/binary/reflector.h b/lib/binary/reflector.h index a857d4c..89c47d6 100644 --- a/lib/binary/reflector.h +++ b/lib/binary/reflector.h @@ -19,6 +19,10 @@ #include #include +/// \cond +class BinaryReflectorTests; +/// \endcond + namespace ReflectiveRapidJSON { /*! @@ -50,8 +54,10 @@ template > * = nullptr> void template > * = nullptr> void writeCustomType(BinarySerializer &serializer, const Type &customType); class BinaryDeserializer : public CppUtilities::BinaryReader { + friend class ::BinaryReflectorTests; + public: - BinaryDeserializer(std::istream *stream); + explicit BinaryDeserializer(std::istream *stream); using CppUtilities::BinaryReader::read; template > * = nullptr> void read(Type &pair); @@ -67,12 +73,15 @@ public: template > * = nullptr> void read(Type &variant); template > * = nullptr> void read(Type &customType); +private: std::unordered_map m_pointer; }; class BinarySerializer : public CppUtilities::BinaryWriter { + friend class ::BinaryReflectorTests; + public: - BinarySerializer(std::ostream *stream); + explicit BinarySerializer(std::ostream *stream); using CppUtilities::BinaryWriter::write; template > * = nullptr> void write(const Type &pair); @@ -83,6 +92,7 @@ public: template > * = nullptr> void write(const Type &variant); template > * = nullptr> void write(const Type &customType); +private: std::unordered_map m_pointer; };