--- libgig/trunk/src/Serialization.h 2017/12/03 16:03:34 3391 +++ libgig/trunk/src/Serialization.h 2017/12/03 17:49:22 3392 @@ -323,6 +323,7 @@ */ typedef std::vector UIDChain; +#if LIBGIG_SERIALIZATION_INTERNAL // prototyping of private internal friend functions static String _encodePrimitiveValue(const Object& obj); static DataType _popDataTypeBlob(const char*& p, const char* end); @@ -333,6 +334,7 @@ // | template static T _primitiveObjectValueToNumber(const Object& obj); +#endif // LIBGIG_SERIALIZATION_INTERNAL /** @brief Abstract reflection of a native C++ data type. * @@ -455,7 +457,9 @@ int m_size; bool m_isPointer; +#if LIBGIG_SERIALIZATION_INTERNAL friend DataType _popDataTypeBlob(const char*& p, const char* end); +#endif friend class Archive; }; @@ -505,7 +509,9 @@ String m_name; DataType m_type; +#if LIBGIG_SERIALIZATION_INTERNAL friend Member _popMemberBlob(const char*& p, const char* end); +#endif }; /** @brief Abstract reflection of some native serialized C/C++ data. @@ -571,13 +577,15 @@ RawData m_data; std::vector m_members; +#if LIBGIG_SERIALIZATION_INTERNAL friend String _encodePrimitiveValue(const Object& obj); friend Object _popObjectBlob(const char*& p, const char* end); friend void _popPrimitiveValue(const char*& p, const char* end, Object& obj); friend String _primitiveObjectValueToString(const Object& obj); - + // | template friend T _primitiveObjectValueToNumber(const Object& obj); +#endif // LIBGIG_SERIALIZATION_INTERNAL friend class Archive; };