Handle pipeline.done event. */
| 291 | |
| 292 | /* Handle pipeline.done event. */ |
| 293 | static void on_done(const char *line) { |
| 294 | flush_carriage(); |
| 295 | char ms[CBM_SZ_32] = {0}; |
| 296 | const char *elapsed = extract_kv(line, "elapsed_ms", ms, (int)sizeof(ms)); |
| 297 | if (s_gbuf_nodes >= 0 && s_gbuf_edges >= 0 && elapsed) { |
| 298 | (void)fprintf(s_out, "Done: %d nodes, %d edges (%s ms)\n", s_gbuf_nodes, s_gbuf_edges, |
| 299 | elapsed); |
| 300 | } else if (s_gbuf_nodes >= 0 && s_gbuf_edges >= 0) { |
| 301 | (void)fprintf(s_out, "Done: %d nodes, %d edges\n", s_gbuf_nodes, s_gbuf_edges); |
| 302 | } else { |
| 303 | (void)fprintf(s_out, "Done.\n"); |
| 304 | } |
| 305 | (void)fflush(s_out); |
| 306 | } |
| 307 | |
| 308 | /* Handle parallel.extract.progress event — in-place counter. */ |
| 309 | static void on_extract_progress(const char *line) { |
nothing calls this directly
no test coverage detected