1#ifndef BEAST_NUDB_VARINT_H_INCLUDED
2#define BEAST_NUDB_VARINT_H_INCLUDED
4#include <nudb/detail/stream.hpp>
22template <class T, bool = std::is_unsigned<T>::value>
36template <
class =
void>
51 if (n == 1 && *p == 0)
69template <class T, std::enable_if_t<std::is_unsigned<T>::value>* =
nullptr>
82template <
class =
void>
100template <class T, std::enable_if_t<std::is_same<T, varint>::value>* =
nullptr>
113template <class T, std::enable_if_t<std::is_same<T, varint>::value>* =
nullptr>
std::size_t read_varint(void const *buf, std::size_t buflen, std::size_t &t)
std::size_t size_varint(T v)
void write(nudb::detail::ostream &os, std::size_t t)
void read(nudb::detail::istream &is, std::size_t &u)
std::size_t write_varint(void *p0, std::size_t v)
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.