Class LiteralInstrAsmGenerator
java.lang.Object
org.ek9lang.compiler.backend.jvm.AbstractAsmGenerator
org.ek9lang.compiler.backend.jvm.LiteralInstrAsmGenerator
- All Implemented Interfaces:
Consumer<LiteralInstr>
public final class LiteralInstrAsmGenerator
extends AbstractAsmGenerator
implements Consumer<LiteralInstr>
Specialized ASM generator for LiteralInstr processing.
Handles loading of literal/constant values into JVM bytecode
using the actual LiteralInstr typed methods (no string parsing).
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractAsmGenerator
AbstractAsmGenerator.LocalVariableInfo, AbstractAsmGenerator.MethodContext, AbstractAsmGenerator.ScopeInfo, AbstractAsmGenerator.TempVariableSource
-
Field Summary
Fields inherited from class AbstractAsmGenerator
classWriter, constructTargetTuple, outputVisitor
-
Constructor Summary
ConstructorsConstructorDescriptionLiteralInstrAsmGenerator
(ConstructTargetTuple constructTargetTuple, OutputVisitor outputVisitor, org.objectweb.asm.ClassWriter classWriter) -
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(LiteralInstr literalInstr) Generate JVM bytecode for a literal loading instruction.Methods inherited from class AbstractAsmGenerator
convertToJvmDescriptor, convertToJvmName, generateBooleanLiteral, generateCharacterLiteral, generateDebugInfo, generateFloatLiteral, generateIntegerLiteral, generateLoadVariable, generateLocalVariableTable, generateMethodDescriptor, generateObjectLiteral, generateStackOperation, generateStoreVariable, generateStringLiteral, getCurrentMethodVisitor, getMethodContext, getOrCreateLabel, getVariableIndex, isVariableAllocated, setCurrentMethodVisitor, setSharedMethodContext, trackTempVariableFromLiteral, trackTempVariableFromLoad
-
Constructor Details
-
LiteralInstrAsmGenerator
public LiteralInstrAsmGenerator(ConstructTargetTuple constructTargetTuple, OutputVisitor outputVisitor, org.objectweb.asm.ClassWriter classWriter)
-
-
Method Details
-
accept
Generate JVM bytecode for a literal loading instruction. Uses LiteralInstr typed methods to extract literal value and type.- Specified by:
accept
in interfaceConsumer<LiteralInstr>
-