Idea detail
local_symbolic_analysis
reqlan rq/indexer/indexer.rq:99
Summary
Open-file symbolic analysis must run in Rust on one file only.
Input: file URI plus source text ( and optional import-root mappings ).
Output: ideas in that file, import binding names in that file, outbound edges with UTF-8 source byte spans, and same-file
inbound backlinks ( edges whose target is an idea declared in this file ).
Import binding names let a qualified reference name an import alias
( check_qualified_missing_idea ).
LSP document-link and error underlines must convert those spans to UTF-16
( reference_underline_syntax_align ).
Cross-file inbound still comes from SQLite via unify_inbound_indexes.
Do not read SQLite. Do not walk other workspace documents. Do not load an idea catalog.
The open-buffer model is ast_lifecycle.
The hot path parses this buffer once. It does not run this extract as a second parse.
Import-target confirmation is a separate depth-1 parse
( outbound_one_hop ).
That parse is not this extract.
The language server caches the open buffer by URI plus text fingerprint
( open_file_hot_path ).
Wildcard forms stay one `wildcard_reference` pattern edge ( unresolved ); sync still expands
them later via wildcard_reference_edges.
Flag: `ExtractOptions.local_symbolic` forces an empty candidate list.
CLI: commands `analyse --local-symbolic <file>`.
Sidebar: reference_lists_pane
merges live same-file inbound / outbound with indexed refs ( local_symbolic_sidebar ).
Related: open_file_reference_sequencing, index,
unify_inbound_indexes.
Navigation
Attributes
| Key | Value |
|---|---|
| implementation | extract.rs, types.rs, lib.rs, parse-source.ts, local-symbolic-references.ts, reqlan-document-link-provider.ts, reqlan-definition-provider.ts, reqlan-local-symbolic-links.ts, reqlan-utf8-lsp-offset.ts, analyse.ts, local-symbolic-context.ts, context-model.ts |
| status | done |
| tests | local_symbolic.rs:analyze_local_symbolic_returns_outbound_without_catalog, local_symbolic.rs:analyze_local_symbolic_ignores_catalog_candidates, local_symbolic.rs:analyze_local_symbolic_includes_same_file_inbound_backlinks, local_symbolic.rs:analyze_local_symbolic_source_offsets_are_utf8_bytes, golden_corpus.rs:qualified_reference_to_an_import_alias_is_not_a_missing_idea, load-native.test.ts:exposes analyzeLocalSymbolic on the engine when present, local-symbolic-references.test.ts, workspace link, local-symbolic-links.test.ts:idea underlines match syntax tokens after non-ASCII text, local-symbolic.test.ts, local-symbolic-context.test.ts |
Ancestor context
No ancestor chain recorded.
Outbound references
Inbound references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| references | commands | reqlan rq/cli/cli_package.rq | local_symbolic_analysis |
| references | ast_lifecycle | reqlan rq/extension/language/support/open-file-sequencing.rq | local_symbolic_analysis |
| references | outbound_one_hop | reqlan rq/extension/language/support/open-file-sequencing.rq | local_symbolic_analysis |
| references | non_web_reference_navigation | reqlan rq/extension/language/syntax/features-syntax-highlighting.rq | local_symbolic_analysis |
| references | reference_underline_syntax_align | reqlan rq/extension/language/syntax/features-syntax-highlighting.rq | local_symbolic_analysis |
| references | reference_lists_pane | reqlan rq/extension/local-context/activitybar-panels/current_context_scope.rq | local_symbolic_analysis |
| references | unify_inbound_indexes | reqlan rq/indexer/cache-reuse.rq | local_symbolic_analysis |
| references | wildcard_reference_edges | reqlan rq/indexer/indexer.rq | local_symbolic_analysis |
| references | local_symbolic_sidebar | reqlan rq/indexer/indexer.rq | local_symbolic_analysis |
| references | reference_resolution_order | reqlan rq/language/syntax.rq | local_symbolic_analysis |
| references | open_file_reference_sequencing | reqlan rq/language/syntax.rq | local_symbolic_analysis |
Unresolved references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| None | |||
Local graph
Initialising graph…