4* Define a Scope type that encodes the tree of scope information, mapping to the information that babel represents in its own scope tree
5
6▶The main public API is roughly `compile(BabelAst, Scope) -> Option<BabelAst>` returning None if no changes, or Some with the updated ast.
7
8## Arenas
· · ·
16 * Table on Environment, stores actual ReactiveScope values
17 * `Identifier`, scope terminals, etc reference indirectly via `ScopeID`
18▶* `Function`:
19 * Table on Environment, stores the inner HirFunction values
20 * `InstructionValue::FunctionExpression` and `::ObjectMethod` reference indirectly via `FunctionId`
· · ·
19▶ * Table on Environment, stores the inner HirFunction values
20 * `InstructionValue::FunctionExpression` and `::ObjectMethod` reference indirectly via `FunctionId`
21* `Type`:
· · ·
20▶ * `InstructionValue::FunctionExpression` and `::ObjectMethod` reference indirectly via `FunctionId`
21* `Type`:
22 * Table on Environment, stores actual types
· · ·
28
29* Rename `InstructionId` to `EvaluationOrder` - this type is actually about representing the evaluation order, and is not even instruction-specific: it is also present on terminals.
30▶* `HirFunction` stores `instructions: Vec<InstructionId>`
31* `BasicBlock.instructions` becomes `Vec<InstructionId>`, indexing into the `HirFunction.instructions` vec
32
+ 7 more matches in this file