39 #if !defined(TAWARA_VINT_H_)
40 #define TAWARA_VINT_H_
80 std::streamsize
size(uint64_t integer);
88 typedef std::pair<uint64_t, std::streamsize>
OffsetInt;
103 OffsetInt
s_to_u(int64_t integer);
119 int64_t
u_to_s(OffsetInt integer);
142 std::vector<char>
encode(uint64_t integer, std::streamsize req_size=0);
148 typedef std::pair<uint64_t, std::vector<char>::const_iterator>
DecodeResult;
162 DecodeResult
decode(std::vector<char>
const& buffer);
183 std::streamsize
write(uint64_t integer, std::ostream& output,
184 std::streamsize req_size=0);
204 ReadResult
read(std::istream& input);
211 #endif // TAWARA_VINT_H_
std::vector< char > encode(uint64_t integer, std::streamsize req_size=0)
Encode an unsigned integer into a buffer.
std::pair< uint64_t, std::streamsize > ReadResult
The result of a read operation is a pair of the integer read and the number of bytes read...
std::streamsize size(uint64_t integer)
Get the size of an integer after encoding.
DecodeResult decode(std::vector< char > const &buffer)
Decode an unsigned variable-length integer from a buffer.
OffsetInt s_to_u(int64_t integer)
Offsets a signed integer into unsigned territory.
ReadResult read(std::istream &input)
Decode an unsigned integer from an input stream.
std::streamsize write(uint64_t integer, std::ostream &output, std::streamsize req_size=0)
Encode an unsigned integer and write it to an output stream.
std::pair< uint64_t, std::streamsize > OffsetInt
The result type of s_to_u().
int64_t u_to_s(OffsetInt integer)
Offsets an unsigned integer into signed territory.
std::pair< uint64_t, std::vector< char >::const_iterator > DecodeResult
The result of a decode operation is a pair of the integer decoded and an iterator pointing to the fir...