Class LocalVariableInfo
java.lang.Object
org.ek9lang.compiler.backend.jvm.support.LocalVariableInfo
Metadata for a local variable needed for LocalVariableTable generation.
Tracks the variable name, type descriptor, scope, and JVM slot for generating debug information that enables jdb's 'locals' command.
The optional declaration label is the bytecode position
immediately after the variable's null-init store (WP-B.2). Used as the
LocalVariableTable range START so the range begins where the slot is
verifier-defined — rather than at method entry, which made every local claim the
method-wide range [0,end) and threw InconsistentDebugInfoException on a
read-before-store (defect B-1).
-
Constructor Summary
ConstructorsConstructorDescriptionLocalVariableInfo(String name, String typeDescriptor, String scopeId) Create local variable info. -
Method Summary
Modifier and TypeMethodDescriptionorg.objectweb.asm.LabelThe bytecode position after this variable's null-init store, or null for a parameter (which is live from method entry) or an uninstrumented compile.getName()intgetSlot()voidsetDeclarationLabel(org.objectweb.asm.Label declarationLabel) voidsetSlot(int slot)
-
Constructor Details
-
LocalVariableInfo
-
-
Method Details
-
getName
-
getTypeDescriptor
-
getScopeId
-
getSlot
public int getSlot() -
setSlot
public void setSlot(int slot) -
getDeclarationLabel
public org.objectweb.asm.Label getDeclarationLabel()The bytecode position after this variable's null-init store, or null for a parameter (which is live from method entry) or an uninstrumented compile. WP-B.2 range start. -
setDeclarationLabel
public void setDeclarationLabel(org.objectweb.asm.Label declarationLabel)
-