Skip to main content

Module deep_queries

Module deep_queries 

Source
Expand description

Tree-sitter deep queries for extracting imports, call sites, and type definitions.

Replaces regex-based extraction in deps.rs with precise AST parsing. Supported languages are gated by get_language (and kept in sync with core::language_capabilities): the TypeScript/JavaScript family, Python, Rust, Go, Java, C/C++, Ruby, C#, Kotlin, Swift, PHP, Bash, Dart, Scala, Elixir, Zig, and GDScript.

Modules§

types
Types and data structures for deep query analysis.

Structs§

CallSite
DeepAnalysis
ExtMethodDef
A C# extension method (static T Foo(this X x, …)). Captured so that a call value.Foo() can be linked to the file that defines the extension, even though the receiver is an instance and the definer’s type name is never written at the call site (GH #398 follow-up). Kept deliberately small — only what the host-resolution needs.
ImportInfo
TypeDef
TypeUse
A usage of a named type (field/parameter/property/return type, base class, generic argument, cast, typeof). Languages with implicit same-namespace/package visibility (C#, Java) consume types without any import statement, so type usages are the only reliable file-dependency signal there (GH #398).

Enums§

ImportKind
TypeDefKind

Functions§

analyze
get_language
Map a file extension to its tree-sitter Language, or None when unsupported. Public so the post-edit syntax gate (crate::syntax_validate) reuses the exact same grammar set (#1008).