Module dmd.dfa.fast.analysis
Analysis engine for the fast Data Flow Analysis engine.
This module implements the mathematical core of the DFA. It is responsible for: 1. Transfer Functions: Calculating how specific operations (Assign, Math, Equal) transform the abstract state (Lattice) of variables. 2. Convergence (Confluence): Merging states from different control flow paths (e.g., merging the "True" and "False" branches of an if-statement). 3. Loop Approximation: Handling loops in O(1) time by making conservative assumptions rather than iterating to a fixed point.
Has the convergence and transfer functions.
Documentation
https://dlang.org/phobos/dmd_dfa_fast_analysis.html
Coverage
https://codecov.io/gh/dlang/dmd/src/master/compiler/src/dmd/dfa/fast/analysis.d
Structs
| Name | Description |
|---|---|
DFAAnalyzer
|
The core analyzer that manipulates the Lattice state. |