13#include "../safeguards.h"
20 std::array<char, 1> buf{
21 static_cast<char>(value)
31 this->
PutUint8(
static_cast<uint8_t
>(value));
39 std::array<char, 2> buf{
40 static_cast<char>(
static_cast<uint8_t
>(value)),
41 static_cast<char>(
static_cast<uint8_t
>(value >> 8))
59 std::array<char, 4> buf{
60 static_cast<char>(
static_cast<uint8_t
>(value)),
61 static_cast<char>(
static_cast<uint8_t
>(value >> 8)),
62 static_cast<char>(
static_cast<uint8_t
>(value >> 16)),
63 static_cast<char>(
static_cast<uint8_t
>(value >> 24))
81 std::array<char, 8> buf{
82 static_cast<char>(
static_cast<uint8_t
>(value)),
83 static_cast<char>(
static_cast<uint8_t
>(value >> 8)),
84 static_cast<char>(
static_cast<uint8_t
>(value >> 16)),
85 static_cast<char>(
static_cast<uint8_t
>(value >> 24)),
86 static_cast<char>(
static_cast<uint8_t
>(value >> 32)),
87 static_cast<char>(
static_cast<uint8_t
>(value >> 40)),
88 static_cast<char>(
static_cast<uint8_t
>(value >> 48)),
89 static_cast<char>(
static_cast<uint8_t
>(value >> 56))
107 this->
PutUint8(
static_cast<uint8_t
>(c));
124 this->dest->append(str.data(), str.size());
virtual void PutBuffer(std::span< const char > str)=0
Append buffer.
void PutUint32LE(uint32_t value)
Append binary uint32 using little endian.
void PutSint8(int8_t value)
Append binary int8.
void PutUint64LE(uint64_t value)
Append binary uint64 using little endian.
void PutSint64LE(int64_t value)
Append binary int64 using little endian.
void PutUtf8(char32_t c)
Append UTF.8 char.
void PutUint16LE(uint16_t value)
Append binary uint16 using little endian.
void PutSint32LE(int32_t value)
Append binary int32 using little endian.
void PutChar(char c)
Append 8-bit char.
void PutSint16LE(int16_t value)
Append binary int16 using little endian.
void PutUint8(uint8_t value)
Append binary uint8.
void PutBuffer(std::span< const char > str) override
Append buffer.
std::pair< char[4], size_t > EncodeUtf8(char32_t c)
Encode a character to UTF-8.
Compose strings from textual and binary data.
Handling of UTF-8 encoded data.