void OArchiveProtobuf::WriteObject(const field_serializer& serializer, const void* pObj) { // Root object, no identifier. We just pass control to the serializer. try { serializer.serialize(*this, pObj); } catch (serialization_error& ex) { std::ostringstream ss; ss << "While processing the root object:" << std::endl << ex.what(); throw leap::internal::protobuf::serialization_error{ ss.str() }; } }
void OArchiveJSON::WriteObject(const field_serializer& serializer, const void* pObj) { serializer.serialize(*this, pObj); }