Uses of Record Class
org.ek9lang.compiler.phase7.support.ExprProcessingDetails
Packages that use ExprProcessingDetails
-
Uses of ExprProcessingDetails in org.ek9lang.compiler.phase7.generator
Classes in org.ek9lang.compiler.phase7.generator that implement interfaces with type arguments of type ExprProcessingDetailsModifier 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 classGenerates IR instructions for binary operations (e.g., addition, subtraction, comparison, etc.).final classCreates IR instructions for expressions.final classUnified function call processor using CallDetailsBuilder for method resolution and promotion.final classGenerates IR instructions for list literal expressions.final classGenerates IR instructions for question operator (?) using unified SWITCH_CHAIN_BLOCK.final classGenerates IR instructions for unary operations (e.g., unary minus, increment, decrement, etc.).Methods in org.ek9lang.compiler.phase7.generator with parameters of type ExprProcessingDetailsModifier and TypeMethodDescriptionAbstractShortCircuitGenerator.apply(ExprProcessingDetails details) BinaryOperationGenerator.apply(ExprProcessingDetails details) ExprInstrGenerator.apply(ExprProcessingDetails details) Generate IR instructions for expression.ListLiteralGenerator.apply(ExprProcessingDetails details) QuestionBlockGenerator.apply(ExprProcessingDetails details) UnaryOperationGenerator.apply(ExprProcessingDetails details) ControlFlowChainGenerator.generateQuestionOperator(ExprProcessingDetails exprDetails) Generate SWITCH_CHAIN_BLOCK for Question operator (?).Method parameters in org.ek9lang.compiler.phase7.generator with type arguments of type ExprProcessingDetailsModifier and TypeMethodDescriptionFunctionCallProcessor.apply(CallProcessingDetails details, Function<ExprProcessingDetails, List<IRInstr>> exprProcessor) Apply function call processing with an expression processor function.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 ExprProcessingDetailsModifierConstructorDescriptionControlFlowChainGenerator(IRGenerationContext stackContext, VariableMemoryManagement variableMemoryManagement, Function<ExprProcessingDetails, List<IRInstr>> rawExprProcessor) -
Uses of ExprProcessingDetails in org.ek9lang.compiler.phase7.support
Classes in org.ek9lang.compiler.phase7.support that implement interfaces with type arguments of type ExprProcessingDetailsModifier and TypeClassDescriptionclassTriggers the expression processing with the given details.Methods in org.ek9lang.compiler.phase7.support with parameters of type ExprProcessingDetailsConstructor parameters in org.ek9lang.compiler.phase7.support with type arguments of type ExprProcessingDetailsModifierConstructorDescriptionRecordExprProcessing(Function<ExprProcessingDetails, List<IRInstr>> processor, VariableMemoryManagement variableMemoryManagement)