You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
♻️ Adopt hybrid architecture: NodeId + side table for expression types
Replace `inferred_type: Option<StaticType>` on `ExpressionLocation` with
a `NodeId` identity field and an `AnalysisResult` side table in the
analyser. This follows the hybrid pattern: compilation-critical data
(bindings, captures) stays on the AST; tooling-specific data (expression
types) lives in a side table keyed by NodeId.
- Add `NodeId` with atomic counter to ndc_parser
- Add `AnalysisResult { expr_types: HashMap<NodeId, StaticType> }` to
ndc_analyser, populated during analysis via `take_result()`
- LSP reads expression types from the side table via NodeId lookup
Co-Authored-By: Claude Opus 4.6 <[email protected]>
0 commit comments