Class GuardedAssignmentBlockGenerator
java.lang.Object
org.ek9lang.compiler.phase7.GuardedAssignmentBlockGenerator
- All Implemented Interfaces:
Function<GuardedAssignmentGenerator.GuardedAssignmentDetails,
List<IRInstr>>
final class GuardedAssignmentBlockGenerator
extends Object
implements Function<GuardedAssignmentGenerator.GuardedAssignmentDetails,List<IRInstr>>
Guarded assignment generator using unified CONTROL_FLOW_CHAIN approach.
This generator has been migrated to use the unified control flow: 1. Delegates to ControlFlowChainGenerator for actual IR generation 2. Maintains backward compatibility with existing call sites 3. Uses CONTROL_FLOW_CHAIN with GUARDED_ASSIGNMENT chain type
Guarded assignment becomes a CONTROL_FLOW_CHAIN with condition: if (!lhsSymbol?) then assign else do nothing
-
Constructor Summary
ConstructorsConstructorDescriptionGuardedAssignmentBlockGenerator
(IRContext context, QuestionBlockGenerator questionBlockGenerator, AssignExpressionToSymbol assignExpressionToSymbol) -
Method Summary
Modifier and TypeMethodDescription
-
Constructor Details
-
GuardedAssignmentBlockGenerator
public GuardedAssignmentBlockGenerator(IRContext context, QuestionBlockGenerator questionBlockGenerator, AssignExpressionToSymbol assignExpressionToSymbol)
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceFunction<GuardedAssignmentGenerator.GuardedAssignmentDetails,
List<IRInstr>>
-