1#ifndef RDS2CPP_VERSION_HPP
2#define RDS2CPP_VERSION_HPP
8#include "utils_parse.hpp"
9#include "utils_write.hpp"
42template<
typename Source_>
43Version parse_version(Source_& src) {
45 auto writer_version = quick_integer<std::int32_t>(src);
47 output.
major = (writer_version >> 16);
48 output.
minor = (writer_version >> 8) & 255;
49 output.
patch = writer_version & 255;
53template<
class BufferedWriter_>
54void write_version(
const Version& version, BufferedWriter_& bufwriter) {
56 inject_integer<std::int32_t, std::int32_t>(
59 static_cast<std::int32_t
>(version.patch),
Parse an RDS file in C++.
Definition StringEncoding.hpp:12
constexpr Dest_ product_unsafe(First_ first, Args_... more)
Major-minor-patch version number, usually of R itself.
Definition Version.hpp:22
std::uint8_t patch
Definition Version.hpp:36
std::int16_t major
Definition Version.hpp:26
std::uint8_t minor
Definition Version.hpp:31