#include "Util/Format.h" namespace Util { static const char hex_digits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; const std::string Hex(uint32_t n, size_t num_digits) { Util::Format f; f << "0x"; for (size_t b = num_digits * 4; b; ) { b -= 4; f << hex_digits[(n >> b) & 0xf]; } return f; } const std::string Hex(uint32_t n) { return Hex(n, 8); } const std::string Hex(uint16_t n) { return Hex(n, 4); } const std::string Hex(uint8_t n) { return Hex(n, 2); } } // Util