Class CallInstrGenerator
java.lang.Object
org.ek9lang.compiler.phase7.generator.AbstractGenerator
org.ek9lang.compiler.phase7.generator.CallInstrGenerator
- All Implemented Interfaces:
BiFunction<EK9Parser.CallContext, VariableDetails, List<IRInstr>>
final class CallInstrGenerator
extends AbstractGenerator
implements BiFunction<EK9Parser.CallContext, VariableDetails, List<IRInstr>>
Generates IR instructions for function/method calls.
Handles:
- Function calls: functionName(args...)
- Method calls: object.methodName(args...)
- Parameter evaluation with proper memory management
- Return type resolution and metadata extraction
- CallInstr.call generation for function invocations
-
Field Summary
Fields inherited from class AbstractGenerator
debugInfoCreator, instructionBuilder, stackContext
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapply
(EK9Parser.CallContext ctx, VariableDetails resultDetails) Methods inherited from class AbstractGenerator
extractCallMetaData, getRecordedSymbolOrException
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface BiFunction
andThen
-
Constructor Details
-
CallInstrGenerator
CallInstrGenerator(IRGenerationContext stackContext)
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceBiFunction<EK9Parser.CallContext, VariableDetails, List<IRInstr>>
-