47 const size_t line_size,
const bool print_ascii)
52 return hex_dump (buf, buf_len, line_size, print_ascii);
58 const char *ptr_line = ptr;
61 for (
size_t i = 0;
i < length;
i++)
63 this->
operator() (
"%02X ", (
unsigned char) (*ptr++));
64 if (print_ascii ==
true 65 && (
i % line_size == (line_size - 1) ||
i == length - 1))
67 const char *ptr_print;
69 if (
i % line_size != (line_size - 1))
71 std::string spaces (3 * (line_size - 1 - (
i % line_size)),
' ');
75 for (ptr_print = ptr_line; ptr_print < ptr; ptr_print++)
77 if (*ptr_print >= 32 && (
unsigned char) *ptr_print < 128)
87 ptr_line += line_size;
90 if (
i % line_size == (line_size - 1) &&
i != length)
cubmem::extensible_block m_ext_block
int operator()(Args &&...args)
void hex_dump(const string_buffer &in, const size_t max_to_dump, const size_t line_size=16, const bool print_ascii=true)
const char * get_buffer() const
void extend_to(size_t total_bytes)
void add_bytes(size_t len, const char *bytes)