Pseudocode: Generate instructions for callable reference expressions
Pseudocode: Add mapping from pseudo-values to PSI elements
Pseudocode: Avoid null input values
Pseudocode: Track merged values. Compute closure of value usages over merge instructions. Exclude merge instructions from usage lists
Control-Flow Analysis: Compute STATEMENT slice using control-flow information
Pseudocode: Generate magics for cast expressions
Pseudocode: Replace UnsupportedElementInstruction with UNSUPPORTED_ELEMENT magic.
Generate UNSUPPORTED_ELEMENT for assignments with unresolved left-han side
Pseudocode: Consume value of true condition in while-loop
Pseudocode: Generate UNSUPPORTED_ELEMENT for misplaced returns
Pseudocode: Generate synthetic VALUE_CONSUMER for both property and class delegates
Pseudocode: Generate fake values for Unit/Nothing-typed expressions
Pseudocode: Do not regenerate receiver values
Pseudocode: Generate merge instruction regardless of number of branches
Pseudocode: Generate read instructions on call expression (instead of
callee)
Pseudocode: Add test for parenthesized call in selector
Control-Flow Analysis: Reuse pseudo-value information for unused expression analysis