Commit 06aaa85
authored
feat(native): port CUDA extractor to Rust (#1099)
* feat(native): port CUDA extractor to Rust
Adds tree-sitter-cuda dependency and native extractor matching
the WASM-side behavior for CUDA symbol, import, and call extraction.
Part of #1071
* fix(native): mirror C++ extractor type-map and include name stripping in CUDA
CUDA files now populate `type_map` from declarations and parameter
declarations via a third walk pass, matching `cpp.rs`. Without it,
receiver-typed calls like `buf.copy(...)` could not resolve to
`DeviceBuffer.copy` for CUDA sources in the native layer.
`#include` import names also now drop the trailing `.cuh`/`.hpp`/`.h`
extension so `cInclude` resolution links CUDA headers consistently with
the native C/C++ extractors. Strengthens the include test to cover the
stripped names and adds two type_map tests.
* chore(native): sync Cargo.lock with crate version bump from main merge1 parent 1acf15e commit 06aaa85
10 files changed
Lines changed: 696 additions & 8 deletions
File tree
- crates/codegraph-core
- src
- extractors
- src
- ast-analysis/rules
- domain
- tests/parsers
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| |||
0 commit comments