| 2261 | } |
| 2262 | |
| 2263 | inline void split(const char *b, const char *e, char d, |
| 2264 | std::function<void(const char *, const char *)> fn) { |
| 2265 | size_t i = 0; |
| 2266 | size_t beg = 0; |
| 2267 | |
| 2268 | while (e ? (b + i < e) : (b[i] != '\0')) { |
| 2269 | if (b[i] == d) { |
| 2270 | auto r = trim(b, e, beg, i); |
| 2271 | if (r.first < r.second) { fn(&b[r.first], &b[r.second]); } |
| 2272 | beg = i + 1; |
| 2273 | } |
| 2274 | i++; |
| 2275 | } |
| 2276 | |
| 2277 | if (i) { |
| 2278 | auto r = trim(b, e, beg, i); |
| 2279 | if (r.first < r.second) { fn(&b[r.first], &b[r.second]); } |
| 2280 | } |
| 2281 | } |
| 2282 | |
| 2283 | inline stream_line_reader::stream_line_reader(Stream &strm, char *fixed_buffer, |
| 2284 | size_t fixed_buffer_size) |
no test coverage detected