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 org.ek9lang.compiler.phase7.generator.AbstractGenerator
debugInfoCreator, instructionBuilder, stackContext
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapply
(EK9Parser.CallContext ctx, VariableDetails resultDetails) Methods inherited from class org.ek9lang.compiler.phase7.generator.AbstractGenerator
extractCallMetaData, getRecordedSymbolOrException
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.function.BiFunction
andThen
-
Constructor Details
-
CallInstrGenerator
CallInstrGenerator(IRGenerationContext stackContext)
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceBiFunction<EK9Parser.CallContext,
VariableDetails, List<IRInstr>>
-