#include "VarInt.h" VarInt::VarInt(const std::byte *data) { auto pByte = reinterpret_cast(data); switch (*pByte) { case 0xfd: _value = *((uint16_t*)(pByte + 1)); _size = 2 + 1; break; case 0xfe: _value = *((uint32_t*)(pByte + 1)); _size = 4 + 1; break; case 0xff: _value = *((uint64_t*)(pByte + 1)); _size = 8 + 1; break; default: _value = *pByte; _size = 1; break; } } uint64_t VarInt::value() const { return _value; } uint8_t VarInt::size() const { return _size; }