mirror of
https://github.com/DeusData/codebase-memory-mcp.git
synced 2026-11-04 10:48:20 +00:00
ts_node_parent and ts_node_child(n, i) walk from the root or the first child, so any pass over a flat file was quadratic in its top-level items: child steps grew 3.99x when flat.py doubled, 3.98x for flat.ts, 3.94x for flat.php. Passes now read a per-tree index built on first use, which answers exactly what tree-sitter answers, and every step count above grows 2.00x. The index is scoped over the whole of extraction. A worker keeps its parse of a file for the other passes over that file, so a file is no longer parsed once per pass. C#'s file-scoped namespace is looked for once per file instead of once per class, and the doc memo keeps a wide root cached. No graph content changes. Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
33 lines
1.1 KiB
C
33 lines
1.1 KiB
C
// lsp_all.c — Compilation unit for all LSP type resolver source files.
|
|
// CGo only compiles .c files in the package directory, not subdirectories.
|
|
// This file includes all LSP sources so they compile as part of the cbm package.
|
|
|
|
#include "resolve/syntax_index.h"
|
|
#include "lsp/type_rep.c"
|
|
#include "lsp/scope.c"
|
|
#include "lsp/type_registry.c"
|
|
#include "lsp/go_lsp.c"
|
|
#include "lsp/generated/go_stdlib_data.c"
|
|
#include "lsp/c_lsp.c"
|
|
#include "lsp/generated/c_stdlib_data.c"
|
|
#include "lsp/generated/cpp_stdlib_data.c"
|
|
#include "lsp/php_lsp.c"
|
|
#include "lsp/generated/php_stdlib_data.c"
|
|
#include "lsp/perl_lsp.c"
|
|
#include "lsp/generated/perl_stdlib_data.c"
|
|
#include "lsp/generated/python_stdlib_data.c"
|
|
#include "lsp/py_lsp.c"
|
|
#include "lsp/ts_lsp.c"
|
|
#include "lsp/cs_lsp.c"
|
|
#include "lsp/generated/cs_stdlib_data.c"
|
|
#include "lsp/java_lsp.c"
|
|
#include "lsp/generated/java_stdlib_data.c"
|
|
#include "lsp/generated/kotlin_stdlib_data.c"
|
|
#include "lsp/kotlin_lsp.c"
|
|
#include "lsp/generated/rust_stdlib_data.c"
|
|
#include "lsp/generated/rust_crates_seed.c"
|
|
#include "lsp/rust_cargo.c"
|
|
#include "lsp/rust_proc_macros.c"
|
|
#include "lsp/rust_rustdoc.c"
|
|
#include "lsp/rust_lsp.c"
|