* Distinct languages present in the files table. One indexed aggregate — * lets the dynamic-edge synthesizers skip passes for languages the project * doesn't contain at all (a Kotlin pass has no work on a pure-C repo), so * their cost is zero rather than a full-graph scan that finds nothing
()
| 1097 | * their cost is zero rather than a full-graph scan that finds nothing (#1212). |
| 1098 | */ |
| 1099 | getDistinctFileLanguages(): Set<string> { |
| 1100 | const rows = this.db.prepare('SELECT DISTINCT language FROM files').all() as Array<{ language: string }>; |
| 1101 | return new Set(rows.map((r) => r.language)); |
| 1102 | } |
| 1103 | |
| 1104 | /** |
| 1105 | * Get nodes by exact name match (uses idx_nodes_name index) |
no test coverage detected