Public entry: run the extraction and journal completion. The DONE mark on * every ordinary return (including error/timeout results) tells the crash * supervisor this file did NOT kill the worker — only a file whose S has no * D is a crash/hang suspect. */
| 1614 | * supervisor this file did NOT kill the worker — only a file whose S has no |
| 1615 | * D is a crash/hang suspect. */ |
| 1616 | CBMFileResult *cbm_extract_file(const char *source, int source_len, CBMLanguage language, |
| 1617 | const char *project, const char *rel_path, int64_t timeout_micros, |
| 1618 | const char **extra_defines, const char **include_paths) { |
| 1619 | CBMFileResult *r = |
| 1620 | cbm_extract_file_ex(source, source_len, language, project, rel_path, timeout_micros, |
| 1621 | extra_defines, include_paths, NULL, NULL); |
| 1622 | return r; |
| 1623 | } |
| 1624 | |
| 1625 | /* Initial block for the per-file traversal scratch arena, chosen by measuring |
| 1626 | * arena_grow on a 14k-file TypeScript tree: it fires on one file in 12,000 at |