Class RecordExprProcessing
java.lang.Object
org.ek9lang.compiler.phase7.support.RecordExprProcessing
- All Implemented Interfaces:
Function<ExprProcessingDetails,
List<IRInstr>>
public class RecordExprProcessing
extends Object
implements Function<ExprProcessingDetails,List<IRInstr>>
Triggers the expression processing with the given details.
Then ensures that the exprResult variable is retained and tracked with the appropriate scope.
This means that any use of this will both retain the variable and schedule it with the scope for ARC
decrement (and possible deletion).
So typically this is only used with local variables and internal temporary variables. STACK-BASED: Uses IRGenerationContext to get current scope ID from stack.
-
Constructor Summary
ConstructorsConstructorDescriptionRecordExprProcessing
(Function<ExprProcessingDetails, List<IRInstr>> processor, IRGenerationContext stackContext) -
Method Summary
-
Constructor Details
-
RecordExprProcessing
public RecordExprProcessing(Function<ExprProcessingDetails, List<IRInstr>> processor, IRGenerationContext stackContext)
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceFunction<ExprProcessingDetails,
List<IRInstr>>
-