1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! Symbol extraction from AST — pure functions that return symbols.
//!
//! This module provides functions to extract symbols from a parsed AST.
//! Extraction works directly with the typed AST wrapper types from
//! `crate::parser` (e.g., `Definition`, `Usage`, `Package`), producing
//! `HirSymbol` values without any intermediate representation.
//!
//! # Module structure
//!
//! - [`types`] — Public and internal type definitions (HirSymbol, SymbolKind, etc.)
//! - [`context`] — ExtractionContext for tracking scope during extraction
//! - [`helpers`] — AST → internal type conversion helpers
//! - [`extract`] — Unified extraction entry points and dispatch
//! - [`extract_leaf`] — Leaf node extractors (comment, alias, import, dependency)
//! - [`extract_package`] — Package and filter extractors
//! - [`extract_definition`] — Definition extraction
//! - [`extract_usage`] — Usage and metadata extraction
//! - [`extract_special`] — Special variant helpers (bind, succession, connector, etc.)
// Re-export all public types and functions
pub use ;
pub use new_element_id;
pub use ;