perl-lsp-navigation
Perl navigation provider crate for symbol lookup and cross-file navigation. It covers workspace symbols, type hierarchy, type definition, single-file references, and document links.
Use this crate when
Use perl-lsp-navigation if you need the navigation logic itself. Use
perl-lsp-workspace-symbols when you only need symbol indexing and search, and
use perl-lsp-providers when you want the umbrella re-export surface.
Key exports
WorkspaceSymbolsProvider/WorkspaceSymbol- search indexed symbols with ranking and container namesTypeHierarchyProvider/TypeHierarchyItem- infer parent and child types from Perl inheritance relationshipsTypeDefinitionProvider- find the type behind a variable, method call, or constructor expressionfind_references_single_file- same-file reference discoverycompute_links- document links foruseandrequire
Example
use ;
let mut provider = new;
provider.index_document;
let symbols = provider.search;
let refs = find_references_single_file;
Stack role
This crate is the navigation layer used by perl-lsp request handlers. It sits
on top of parser output and semantic analysis, and below the editor protocol
surface.