std::string generate_string()

in benchmark/src/benchmark_escape.cpp [29:45]


std::string generate_string(size_t size, bool add_special_characters) {
  std::string string;
  for (size_t i = 0; i < size; i++) {
    char c;
    if (add_special_characters && (i % 0x20) == 0) {
      c = 0x01 + i % (0x1f - 0x01);
    } else {
      switch (i % 3) {
        case 0: c = '0' + (i % 10); break;
        case 1: c = 'a' + (i % ('z' - 'a')); break;
        case 2: c = 'A' + (i % ('Z' - 'A')); break;
      }
    }
    string.append(&c, 1);
  }
  return string;
}