Class AssignExpressionToSymbol
java.lang.Object
org.ek9lang.compiler.phase7.generator.AbstractGenerator
org.ek9lang.compiler.phase7.generator.AssignExpressionToSymbol
- All Implemented Interfaces:
BiFunction<ISymbol, EK9Parser.AssignmentExpressionContext, List<IRInstr>>
final class AssignExpressionToSymbol
extends AbstractGenerator
implements BiFunction<ISymbol, EK9Parser.AssignmentExpressionContext, List<IRInstr>>
THE assignment of an assignmentExpression to a symbol (the expression is generated by
generators.assignmentExprGenerator), in one of two AssignExpressionToSymbol.Modes - TWO per construct on the set,
generators.assignToNewSymbol and generators.assignToExistingSymbol (IR tidy W3.9, EXPR-15), never
one per assignment.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static enumWhat the assignment does to the variable's previous value. -
Field Summary
Fields inherited from class AbstractGenerator
stackContext, symbolTypeOrException, typeNameOrException, variableNameForIR -
Constructor Summary
ConstructorsConstructorDescriptionAssignExpressionToSymbol(IRGenerationContext stackContext, GeneratorSet generators, AssignExpressionToSymbol.Mode mode) -
Method Summary
Modifier and TypeMethodDescriptionapply(ISymbol lhsSymbol, EK9Parser.AssignmentExpressionContext ctx) Methods inherited from class AbstractGenerator
addCoverageProbe, createTempVariable, createTempVariableFromContext, getRecordedSymbolOrException, processBlockStatements, processBlockStatements, resultVariableOrTempMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface BiFunction
andThen
-
Constructor Details
-
AssignExpressionToSymbol
AssignExpressionToSymbol(IRGenerationContext stackContext, GeneratorSet generators, AssignExpressionToSymbol.Mode mode)
-
-
Method Details
-
apply
- Specified by:
applyin interfaceBiFunction<ISymbol, EK9Parser.AssignmentExpressionContext, List<IRInstr>>
-