Skip to main content

perl_parser_core/hir/
mod.rs

1//! High-level IR lowered from the parser AST.
2//!
3//! HIR is the first compiler-substrate layer above raw parser nodes. It keeps
4//! stable language constructs, parser anchors, source ranges, and scope graph
5//! proof data without changing LSP provider behavior.
6
7mod lower;
8mod model;
9
10pub use lower::lower_ast;
11pub use model::{
12    AstAnchor, BarewordExpr, BarewordFact, BarewordRole, BarewordTable, Binding, BindingReference,
13    BlockShell, COMPILE_EFFECT_MODEL_VERSION, CallExpr, CallForm, CompileConfidence,
14    CompileDirective, CompileDirectiveAction, CompileDirectiveKind, CompileEffect,
15    CompileEffectFactKind, CompileEffectKind, CompileEffectSourceKind, CompileEnvironment,
16    CompileEnvironmentBoundary, CompileEnvironmentBoundaryKind, CompilePhase, CompilePhaseBlock,
17    CompileProvenance, DynamicBoundary, DynamicBoundaryKind, ExportDeclaration,
18    ExportDeclarationKind, FrameworkAdapterKind, FrameworkAdapterRegistry,
19    FrameworkDynamicBoundaryFact, FrameworkExportedSymbolFact, FrameworkExportedSymbolKind,
20    FrameworkFactGraph, GlobSlot, GlobSlotKind, GlobSlotSource, HirBindingId, HirFile, HirId,
21    HirItem, HirKind, HirScopeId, IncRootAction, IncRootFact, IncRootKind, IndirectCallExpr,
22    InheritanceSource, LiteralExpr, LiteralKind, MethodCallExpr, MethodDecl, ModuleRequest,
23    ModuleRequestKind, ModuleResolutionCacheInvalidation, ModuleResolutionCacheKey,
24    ModuleResolutionCacheRootKey, ModuleResolutionCandidate, ModuleResolutionCandidatePathState,
25    ModuleResolutionCandidateRoot, ModuleResolutionCandidateStatus, ModuleResolutionRoot,
26    ModuleResolutionStatus, PackageDecl, PackageInheritanceEdge, PackageStash, PragmaArgumentKind,
27    PragmaEffect, PragmaStateFact, PrototypeFact, PrototypeTable, RecoveryConfidence, RequireDecl,
28    ScopeFrame, ScopeGraph, ScopeKind, StashConfidence, StashDynamicBoundary,
29    StashDynamicBoundaryKind, StashGraph, StashProvenance, StorageClass, SubDecl, UseDecl,
30    VariableBinding, VariableDecl,
31};