1#ifndef RDS2CPP_WRITE_RDS_HPP
2#define RDS2CPP_WRITE_RDS_HPP
8#include "utils_write.hpp"
9#include "write_object.hpp"
10#include "SharedWriteInfo.hpp"
32 std::vector<unsigned char> buffer;
33 inject_string(
"X\n", 2, buffer);
46 size_t encoding_len = info.
encoding.size();
47 inject_integer(encoding_len, buffer);
48 inject_string(info.
encoding.c_str(), encoding_len, buffer);
49 writer.write(buffer.data(), buffer.size());
52 write_object(info.
object.get(), writer, buffer, shared);
Representations of unserialized R objects.
Information about an RDS file.
Parse an RDS file in C++.
Definition StringEncoding.hpp:10
void write_rds(const RdsFile &info, Writer &writer)
Definition write_rds.hpp:31
Contents of the parsed RDS file.
Definition RdsFile.hpp:21
std::array< unsigned char, 3 > writer_version
Definition RdsFile.hpp:53
std::unique_ptr< RObject > object
Definition RdsFile.hpp:68
std::vector< Symbol > symbols
Definition RdsFile.hpp:80
std::vector< ExternalPointer > external_pointers
Definition RdsFile.hpp:86
std::string encoding
Definition RdsFile.hpp:63
uint32_t format_version
Definition RdsFile.hpp:48
std::vector< Environment > environments
Definition RdsFile.hpp:74
std::array< unsigned char, 3 > reader_version
Definition RdsFile.hpp:58