49 write<uint8_t>(uint8_t(x));
50 else if (x < 0x20 * 0x100)
52 write<uint8_t>(uint8_t(0x20 | (x >> 8)));
53 write<uint8_t>(uint8_t(x));
57 uint32_t extra_bytes = 2;
59 while ((x >> (8 * extra_bytes)) >= 0x20 && extra_bytes <
sizeof(T) - 1)
62 write<uint8_t>(uint8_t((extra_bytes << 5) | (x >> (8 * extra_bytes))));
63 write<uint8_t>(uint8_t(x >> (8 * --extra_bytes)));
64 write<uint8_t>(uint8_t(x >> (8 * --extra_bytes)));
66 write<uint8_t>(uint8_t(x >> (8 * --extra_bytes)));