Uses of Class
org.ek9lang.compiler.ir.instructions.IRInstr
Packages that use IRInstr
Package
Description
Common parts of processing that can be reused across various phases.
K - Intermediate Representation Generation.
-
Uses of IRInstr in org.ek9lang.compiler.backend.jvm
Methods in org.ek9lang.compiler.backend.jvm that return types with arguments of type IRInstrModifier and TypeMethodDescriptionLoopCaseData.body()Returns the value of thebodyrecord component.LoopCaseData.bodySetup()Returns the value of thebodySetuprecord component.LoopCaseData.conditionTemplate()Returns the value of theconditionTemplaterecord component.LoopCaseData.increment()Returns the value of theincrementrecord component.Methods in org.ek9lang.compiler.backend.jvm with parameters of type IRInstrModifier and TypeMethodDescriptionvoidDispatch IRInstr to typed visit methods.Method parameters in org.ek9lang.compiler.backend.jvm with type arguments of type IRInstrModifier and TypeMethodDescriptionprotected voidAbstractControlFlowAsmGenerator.processBodyEvaluation(List<IRInstr> bodyEvaluation) Process body evaluation instructions via recursive visiting.protected voidAbstractControlFlowAsmGenerator.processConditionEvaluation(List<IRInstr> conditionEvaluation) Process condition evaluation instructions via recursive visiting.protected voidAbstractControlFlowAsmGenerator.processInstructions(List<IRInstr> instructions) Process list of IR instructions via recursive delegation to OutputVisitor.Constructor parameters in org.ek9lang.compiler.backend.jvm with type arguments of type IRInstrModifierConstructorDescription(package private)LoopCaseData(org.objectweb.asm.Label loopStart, List<IRInstr> conditionTemplate, String conditionPrimitive, List<IRInstr> bodySetup, List<IRInstr> body, List<IRInstr> increment, org.objectweb.asm.Label endLabel, String loopScopeId, BytecodeGenerationContext.DispatchCase dispatchCase) Creates an instance of aLoopCaseDatarecord class. -
Uses of IRInstr in org.ek9lang.compiler.common
Methods in org.ek9lang.compiler.common with parameters of type IRInstr -
Uses of IRInstr in org.ek9lang.compiler.ir.data
Methods in org.ek9lang.compiler.ir.data that return types with arguments of type IRInstrModifier and TypeMethodDescriptionConditionCaseDetails.bodyEvaluation()Returns the value of thebodyEvaluationrecord component.ConditionCaseDetails.conditionEvaluation()Returns the value of theconditionEvaluationrecord component.ControlFlowChainDetails.defaultBodyEvaluation()Get default body evaluation instructions.DefaultCaseDetails.defaultBodyEvaluation()Returns the value of thedefaultBodyEvaluationrecord component.ControlFlowChainDetails.evaluationVariableSetup()Get evaluation variable setup instructions.EvaluationVariableDetails.evaluationVariableSetup()Returns the value of theevaluationVariableSetuprecord component.ControlFlowChainDetails.guardScopeSetup()Get guard scope setup instructions.GuardVariableDetails.guardScopeSetup()Returns the value of theguardScopeSetuprecord component.ConditionCaseDetails.guardUpdates()Returns the value of theguardUpdatesrecord component.ControlFlowChainDetails.returnVariableSetup()Get return variable setup instructions.ReturnVariableDetails.returnVariableSetup()Returns the value of thereturnVariableSetuprecord component.Method parameters in org.ek9lang.compiler.ir.data with type arguments of type IRInstrModifier and TypeMethodDescriptionstatic ConditionCaseDetailsConditionCaseDetails.createEnumCase(String caseScopeId, String enumConstant, int enumOrdinal, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Create a condition case for enum constant comparison (switch enum cases).static ConditionCaseDetailsConditionCaseDetails.createExpression(String caseScopeId, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Create a condition case for general boolean expressions (if statements).static ConditionCaseDetailsConditionCaseDetails.createGuardCondition(String caseScopeId, List<IRInstr> guardUpdates, String bodyScopeId, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Create a condition case for guard conditions (if/switch with guards).static ConditionCaseDetailsConditionCaseDetails.createLiteral(String caseScopeId, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Create a condition case for literal value comparison (switch literal cases).static ConditionCaseDetailsConditionCaseDetails.createNullCheck(String caseScopeId, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Create a condition case for the Question operator null check.static ControlFlowChainDetailsControlFlowChainDetails.createSwitch(String result, String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup, String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for a general switch statement.static ControlFlowChainDetailsControlFlowChainDetails.createSwitchEnum(String result, String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup, String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, EnumOptimizationDetails enumOptimizationInfo, DebugInfo debugInfo, String scopeId) Create details for a switch statement with enum optimization.static DefaultCaseDetailsDefaultCaseDetails.withInstructions(List<IRInstr> defaultBodyEvaluation) Create default case details with instructions only.static DefaultCaseDetailsDefaultCaseDetails.withResult(List<IRInstr> defaultBodyEvaluation, String defaultResult) Create default case details with instructions and result.static EvaluationVariableDetailsEvaluationVariableDetails.withSetup(String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup) Create evaluation variable details with setup instructions.static ReturnVariableDetailsReturnVariableDetails.withSetup(String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup) Create return variable details with setup instructions.Constructor parameters in org.ek9lang.compiler.ir.data with type arguments of type IRInstrModifierConstructorDescriptionConditionCaseDetails(String caseScopeId, String caseType, List<IRInstr> guardUpdates, String bodyScopeId, String enumConstant, int enumOrdinal, List<IRInstr> conditionEvaluation, String conditionResult, String primitiveCondition, List<IRInstr> bodyEvaluation, String bodyResult) Creates an instance of aConditionCaseDetailsrecord class.DefaultCaseDetails(List<IRInstr> defaultBodyEvaluation, String defaultResult) Creates an instance of aDefaultCaseDetailsrecord class.EvaluationVariableDetails(String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup) Creates an instance of aEvaluationVariableDetailsrecord class.ReturnVariableDetails(String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup) Creates an instance of aReturnVariableDetailsrecord class. -
Uses of IRInstr in org.ek9lang.compiler.ir.instructions
Subclasses of IRInstr in org.ek9lang.compiler.ir.instructionsModifier and TypeClassDescriptionfinal classSpecialized IR instruction for control flow operations (BRANCH, BRANCH_TRUE, BRANCH_FALSE, ASSERT, RETURN).final classSpecialized IR instruction for method calls (CALL, CALL_VIRTUAL, CALL_STATIC, CALL_DISPATCHER).final classUnified IR instruction for all EK9 control flow constructs.final classSpecialized IR instruction for EK9 polymorphic for-range loops.final classSpecialized IR instruction for control flow labels (LABEL).final classIR instruction for loading literal/constant values.final classIR instruction for logical operations (AND/OR) with short-circuit capability.final classSpecialized IR instruction for memory operations (LOAD, STORE, ALLOCA, REFERENCE).final classIR instruction containing all discovered programs and their metadata.final classSpecialized IR instruction for scope management (SCOPE_ENTER, SCOPE_EXIT, SCOPE_REGISTER).Methods in org.ek9lang.compiler.ir.instructions that return IRInstrModifier and TypeMethodDescriptionIRInstr.addOperand(String operand) Add operand to this instruction.IRInstr.addOperands(String... operands) Add multiple operands to this instruction.static IRInstrLogicalOperationInstr.andOperation(LogicalDetails logicalDetails) Create logical AND operation.BasicBlockInstr.getLastInstruction()Get the last instruction in this block (usually control flow).static IRInstrLogicalOperationInstr.orOperation(LogicalDetails logicalDetails) Create logical OR operation.Methods in org.ek9lang.compiler.ir.instructions that return types with arguments of type IRInstrModifier and TypeMethodDescriptionForRangePolymorphicInstr.AscendingCase.directionCheck()Returns the value of thedirectionCheckrecord component.ForRangePolymorphicInstr.DescendingCase.directionCheck()Returns the value of thedirectionCheckrecord component.ForRangePolymorphicInstr.getBodyInstructions()ControlFlowChainInstr.getDefaultBodyEvaluation()Get the default/else case evaluation instructions.ForRangePolymorphicInstr.getInitializationInstructions()BasicBlockInstr.getInstructions()LogicalOperationInstr.getLeftEvaluationInstructions()Get the left operand evaluation instructions.BasicBlockInstr.getMemoryManagementInstructions()Get all memory management instructions in this block.BasicBlockInstr.getMethodCalls()Get all method call instructions in this block.LogicalOperationInstr.getResultComputationInstructions()Get the result computation instructions.LogicalOperationInstr.getRightEvaluationInstructions()Get the right operand evaluation instructions.ForRangePolymorphicInstr.AscendingCase.loopBodySetup()Returns the value of theloopBodySetuprecord component.ForRangePolymorphicInstr.DescendingCase.loopBodySetup()Returns the value of theloopBodySetuprecord component.ForRangePolymorphicInstr.EqualCase.loopBodySetup()Returns the value of theloopBodySetuprecord component.ForRangePolymorphicInstr.AscendingCase.loopConditionTemplate()Returns the value of theloopConditionTemplaterecord component.ForRangePolymorphicInstr.DescendingCase.loopConditionTemplate()Returns the value of theloopConditionTemplaterecord component.ForRangePolymorphicInstr.AscendingCase.loopIncrement()Returns the value of theloopIncrementrecord component.ForRangePolymorphicInstr.DescendingCase.loopIncrement()Returns the value of theloopIncrementrecord component.Methods in org.ek9lang.compiler.ir.instructions with parameters of type IRInstrModifier and TypeMethodDescriptionBasicBlockInstr.addInstruction(IRInstr instruction) Add instruction to this basic block.BasicBlockInstr.addInstructions(IRInstr... instructions) Add multiple instructions to this basic block.Method parameters in org.ek9lang.compiler.ir.instructions with type arguments of type IRInstrModifier and TypeMethodDescriptionBasicBlockInstr.addInstructions(List<IRInstr> instructions) Add multiple instructions from a list.static ForRangePolymorphicInstrForRangePolymorphicInstr.forRangePolymorphic(List<IRInstr> initializationInstructions, ForRangePolymorphicInstr.DispatchCases dispatchCases, ForRangePolymorphicInstr.LoopMetadata metadata, List<IRInstr> bodyInstructions, ForRangePolymorphicInstr.ScopeMetadata scopeMetadata, DebugInfo debugInfo) Create a polymorphic for-range loop instruction.Constructor parameters in org.ek9lang.compiler.ir.instructions with type arguments of type IRInstrModifierConstructorDescriptionAscendingCase(List<IRInstr> directionCheck, String directionPrimitive, List<IRInstr> loopConditionTemplate, String loopConditionPrimitive, List<IRInstr> loopBodySetup, List<IRInstr> loopIncrement) Creates an instance of aAscendingCaserecord class.DescendingCase(List<IRInstr> directionCheck, String directionPrimitive, List<IRInstr> loopConditionTemplate, String loopConditionPrimitive, List<IRInstr> loopBodySetup, List<IRInstr> loopIncrement) Creates an instance of aDescendingCaserecord class.Creates an instance of aEqualCaserecord class. -
Uses of IRInstr in org.ek9lang.compiler.phase7
Methods in org.ek9lang.compiler.phase7 that return types with arguments of type IRInstrModifier and TypeMethodDescriptionAbstractDfnGenerator.processPropertiesForInstanceInit(EK9Parser.AggregatePartsContext ctx) Process all properties for instance initialization. -
Uses of IRInstr in org.ek9lang.compiler.phase7.calls
Methods in org.ek9lang.compiler.phase7.calls that return types with arguments of type IRInstrModifier and TypeMethodDescriptionCallDetailsBuilder.CallDetailsResult.allInstructions()Returns the value of theallInstructionsrecord component.Constructor parameters in org.ek9lang.compiler.phase7.calls with type arguments of type IRInstrModifierConstructorDescriptionCallDetailsResult(CallDetails callDetails, List<IRInstr> allInstructions) Creates an instance of aCallDetailsResultrecord class. -
Uses of IRInstr in org.ek9lang.compiler.phase7.generation
Methods in org.ek9lang.compiler.phase7.generation that return types with arguments of type IRInstrModifier and TypeMethodDescriptionIRGenerationContext.extractInstructions()Get current instruction list and clear it.IRInstructionBuilder.extractInstructions()Extract all built instructions and clear the builder.IRGenerationContext.getCurrentInstructions()Get current instruction list without clearing.Methods in org.ek9lang.compiler.phase7.generation with parameters of type IRInstrModifier and TypeMethodDescriptionvoidIRGenerationContext.addInstruction(IRInstr instruction) Add instruction to current instruction list.voidIRInstructionBuilder.addInstruction(IRInstr instruction) Add a raw instruction to the current context.Method parameters in org.ek9lang.compiler.phase7.generation with type arguments of type IRInstrModifier and TypeMethodDescriptionvoidIRGenerationContext.addInstructions(List<IRInstr> instructions) Add multiple instructions to current instruction list.voidIRInstructionBuilder.addInstructions(List<IRInstr> instructions) Add multiple raw instructions to the current context. -
Uses of IRInstr in org.ek9lang.compiler.phase7.generator
Classes in org.ek9lang.compiler.phase7.generator that implement interfaces with type arguments of type IRInstrModifier and TypeClassDescription(package private) classBoth AND/OR are very similar in processing, the only real differences are:
What operation to call and the op code to generate.final classgIR Generation for the assert statement.(package private) final class(package private) final classCreates IR instructions for assignment expressions.final classProcess assignment statement: variable = expression Uses RELEASE-then-RETAIN pattern for memory-safe assignments.final classGenerates IR instructions for binary operations (e.g., addition, subtraction, comparison, etc.).final classCreates IR instructions for block statements.final classGenerates IR instructions for function/method calls.final classUnified generator for all EK9 control flow constructs using CONTROL_FLOW_CHAIN.final classCreates IR instructions for expressions.final classGenerates IR for for-in loops: for item in collection.final classGenerates IR for for-range loops using FOR_RANGE_POLYMORPHIC instruction.final classCoordinates for-statement IR generation by delegating to specialized generators.final classUnified function call processor using CallDetailsBuilder for method resolution and promotion.final classUnified function call processor using CallDetailsBuilder for method resolution and promotion.(package private) final classGuarded assignment generator using unified CONTROL_FLOW_CHAIN approach.final classGenerates IR for if/else statements using CONTROL_FLOW_CHAIN.final classGenerates IR instructions for list literal expressions.(package private) final classDeals with generating the correct IR Instructions for processing any form of literal.final classGenerates IR instructions for primary references (THIS and SUPER keywords).final classGenerates IR instructions for question operator (?) using unified SWITCH_CHAIN_BLOCK.final classCreates IR instructions for statements.final classGenerates IR for switch statements (statement form only) using CONTROL_FLOW_CHAIN.final classGenerates IR instructions for unary operations (e.g., unary minus, increment, decrement, etc.).final classCreates IR instructions for variable declarations.final classCreates IR instructions for variable only declarations.final classGenerates IR for while and do-while loops using CONTROL_FLOW_CHAIN.Methods in org.ek9lang.compiler.phase7.generator that return types with arguments of type IRInstrModifier and TypeMethodDescriptionAbstractShortCircuitGenerator.apply(ExprProcessingDetails details) AssertStmtGenerator.apply(EK9Parser.AssertStatementContext ctx) AssignExpressionToSymbol.apply(ISymbol lhsSymbol, EK9Parser.AssignmentExpressionContext ctx) Generate IR instructions for assignment expression using stack-based scope management.AssignmentStmtGenerator.apply(EK9Parser.AssignmentStatementContext ctx) BinaryOperationGenerator.apply(ExprProcessingDetails details) BlockStmtInstrGenerator.apply(EK9Parser.BlockStatementContext ctx) Generate IR instructions for a block statement using stack-based scope management.CallInstrGenerator.apply(EK9Parser.CallContext ctx, VariableDetails resultDetails) ControlFlowChainGenerator.apply(ControlFlowChainDetails details) ExprInstrGenerator.apply(ExprProcessingDetails details) Generate IR instructions for expression.ForInGenerator.apply(EK9Parser.ForStatementExpressionContext ctx) ForRangeGenerator.apply(EK9Parser.ForStatementExpressionContext ctx) Main orchestration method for for-range loop IR generation.ForStatementGenerator.apply(EK9Parser.ForStatementExpressionContext ctx) Main entry point for for-statement IR generation.FunctionCallProcessor.apply(CallProcessingDetails details, Function<ExprProcessingDetails, List<IRInstr>> exprProcessor) Apply function call processing with an expression processor function.GuardedAssignmentBlockGenerator.apply(GuardedAssignmentDetails details) IfStatementGenerator.apply(EK9Parser.IfStatementContext ctx) ListLiteralGenerator.apply(ExprProcessingDetails details) LiteralGenerator.apply(LiteralProcessingDetails details) ObjectAccessInstrGenerator.apply(EK9Parser.ObjectAccessExpressionContext ctx, VariableDetails variableDetails) Generate IR instructions for object access expression using resolved symbols.PrimaryReferenceGenerator.apply(PrimaryReferenceProcessingDetails details) QuestionBlockGenerator.apply(ExprProcessingDetails details) StmtInstrGenerator.apply(EK9Parser.StatementContext ctx) Generate IR instructions for a statement using proper stack-based scope management.SwitchStatementGenerator.apply(EK9Parser.SwitchStatementExpressionContext ctx) UnaryOperationGenerator.apply(ExprProcessingDetails details) VariableDeclInstrGenerator.apply(EK9Parser.VariableDeclarationContext ctx) Generate IR instructions for variable declaration with assignment using stack-based scope management.VariableOnlyDeclInstrGenerator.apply(EK9Parser.VariableOnlyDeclarationContext ctx) Generate IR instructions for variable only declaration.WhileStatementGenerator.apply(EK9Parser.WhileStatementExpressionContext ctx) ControlFlowChainGenerator.generateGuardedAssignment(ISymbol lhsSymbol, List<IRInstr> assignmentEvaluation, String assignmentResult, DebugInfo debugInfo) Generate SWITCH_CHAIN_BLOCK for guarded assignment (:=?).ControlFlowChainGenerator.generateQuestionOperator(ExprProcessingDetails exprDetails) Generate SWITCH_CHAIN_BLOCK for Question operator (?).ControlFlowChainGenerator.generateQuestionOperatorForVariable(ISymbol variableSymbol, String resultVariable, DebugInfo debugInfo) Generate SWITCH_CHAIN_BLOCK for Question operator applied to a variable.AbstractVariableDeclGenerator.getDeclInstrs(org.antlr.v4.runtime.tree.ParseTree ctx) SwitchCaseOrChainGenerator.ComparisonResult.instructions()Returns the value of theinstructionsrecord component.BinaryOperationGenerator.processOperandExpression(EK9Parser.ExpressionContext operandExpr, VariableDetails operandDetails) Process operand expression using exprGenerator from generators struct.UnaryOperationGenerator.processOperandExpression(EK9Parser.ExpressionContext operandExpr, VariableDetails operandDetails) Process operand expression using exprGenerator from generators struct.Method parameters in org.ek9lang.compiler.phase7.generator with type arguments of type IRInstrModifier and TypeMethodDescriptionFunctionCallProcessor.apply(CallProcessingDetails details, Function<ExprProcessingDetails, List<IRInstr>> exprProcessor) Apply function call processing with an expression processor function.ControlFlowChainGenerator.generateGuardedAssignment(ISymbol lhsSymbol, List<IRInstr> assignmentEvaluation, String assignmentResult, DebugInfo debugInfo) Generate SWITCH_CHAIN_BLOCK for guarded assignment (:=?).voidConstructorCallProcessor.processConstructorCall(CallSymbol callSymbol, EK9Parser.CallContext callContext, String resultVariable, List<IRInstr> instructions, Function<ExprProcessingDetails, List<IRInstr>> expressionProcessor, boolean useMemoryManagement) Process a constructor call and generate appropriate IR instructions.voidConstructorCallProcessor.processConstructorCall(CallSymbol callSymbol, EK9Parser.CallContext callContext, String resultVariable, List<IRInstr> instructions, Function<ExprProcessingDetails, List<IRInstr>> expressionProcessor, boolean useMemoryManagement) Process a constructor call and generate appropriate IR instructions.Constructor parameters in org.ek9lang.compiler.phase7.generator with type arguments of type IRInstrModifierConstructorDescription(package private)AbstractShortCircuitGenerator(IRGenerationContext stackContext, VariableMemoryManagement variableMemoryManagement, RecordExprProcessing recordExprProcessing, Function<LogicalDetails, IRInstr> logicalOperation) (package private)AssignExpressionToSymbol(IRGenerationContext stackContext, VariableMemoryManagement variableMemoryManagement, boolean release, Function<String, List<IRInstr>> assignmentGenerator) ComparisonResult(List<IRInstr> instructions, String resultVariable, String primitiveCondition) Creates an instance of aComparisonResultrecord class.ControlFlowChainGenerator(IRGenerationContext stackContext, VariableMemoryManagement variableMemoryManagement, Function<ExprProcessingDetails, List<IRInstr>> rawExprProcessor) -
Uses of IRInstr in org.ek9lang.compiler.phase7.support
Classes in org.ek9lang.compiler.phase7.support that implement interfaces with type arguments of type IRInstrModifier and TypeClassDescriptionfinal classCONCERN: Binary operator invocation with memory management.final classCreates evaluation instructions for Boolean._ofFalse() static method call.final classCONCERN: Chained comparison evaluation for polymorphic for-range.final classCONCERN: Comparison evaluation with boolean primitive extraction.final classCONCERN: Loop counter increment/decrement with assignment.classConverts the single IRInstr supplied by the supplier into a List with one element in.classConverts the single IRInstr supplied by the supplier into a List with one element in.final classCONCERN: Literal loading with memory management.final classCONCERN: Boolean primitive extraction from EK9 Boolean objects.classTriggers the expression processing with the given details.final classCONCERN: Unary operator invocation with memory management.final classCalls a supplier of main processing instructions and then adds in the memory management.final classCalls a supplier of main processing instructions and then adds in the memory management.Methods in org.ek9lang.compiler.phase7.support that return types with arguments of type IRInstrModifier and TypeMethodDescriptionBinaryOperatorInvoker.apply(BinaryOperatorParams params) Invoke binary operator on two operands.BooleanFalseEvaluationCreator.apply(VariableDetails variableDetails) BooleanNotEvaluationCreator.apply(String booleanVariable, VariableDetails resultDetails) Creates Boolean._not() method call instructions.ChainedComparisonEvaluator.apply(ChainedComparisonParams params) Evaluate chained comparison operations.ComparisonEvaluator.apply(ComparisonParams params) Evaluate comparison and extract primitive boolean.IncrementEvaluator.apply(IncrementParams params) Evaluate increment/decrement and update counter.IsSetEvaluationCreator.apply(String operandVariable, String operandType, VariableDetails resultDetails) Creates _isSet() method call instructions.ManagedLiteralLoader.apply(LiteralParams params) Load literal value into temp variable with memory management.PrimitiveBooleanExtractor.apply(BooleanExtractionParams params) Extract primitive boolean from EK9 Boolean object.RecordExprProcessing.apply(ExprProcessingDetails details) UnaryOperatorInvoker.apply(UnaryOperatorParams params) Invoke unary operator on operand.VariableMemoryManagement.apply(Supplier<List<IRInstr>> mainProcessing, VariableDetails target) ConditionalEvaluation.conditionInstructions()Returns the value of theconditionInstructionsrecord component.OperandEvaluation.evaluationInstructions()Returns the value of theevaluationInstructionsrecord component.ScopedInstructionExecutor.execute(Supplier<List<IRInstr>> instructionGenerator, DebugInfo debugInfo) Execute instructions within temporary scope.ConditionEvaluationResult.instructions()Returns the value of theinstructionsrecord component.PromotedVariable.instructions()Returns the value of theinstructionsrecord component.PromotionResult.promotionInstructions()Returns the value of thepromotionInstructionsrecord component.Method parameters in org.ek9lang.compiler.phase7.support with type arguments of type IRInstrModifier and TypeMethodDescriptionVariableMemoryManagement.apply(Supplier<List<IRInstr>> mainProcessing, VariableDetails target) ScopedInstructionExecutor.execute(Supplier<List<IRInstr>> instructionGenerator, DebugInfo debugInfo) Execute instructions within temporary scope.static PromotedVariableCreate a promoted variable result.Constructor parameters in org.ek9lang.compiler.phase7.support with type arguments of type IRInstrModifierConstructorDescriptionConditionalEvaluation(List<IRInstr> conditionInstructions, String conditionResult) Creates an instance of aConditionalEvaluationrecord class.ConditionEvaluationResult(List<IRInstr> instructions, String primitiveVariableName) Creates an instance of aConditionEvaluationResultrecord class.OperandEvaluation(List<IRInstr> evaluationInstructions, String operandName) Creates an instance of aOperandEvaluationrecord class.PromotedVariable(String variable, List<IRInstr> instructions) Creates an instance of aPromotedVariablerecord class.RecordExprProcessing(Function<ExprProcessingDetails, List<IRInstr>> processor, VariableMemoryManagement variableMemoryManagement)