Uses of Class
org.objectweb.asm.Label
Packages that use Label
Package
Description
Provides a small and fast bytecode manipulation framework.
Provides some useful class and method adapters.
Provides an ASM visitor that constructs a tree representation of the
classes it visits.
Provides ASM visitors that can be useful for programming and
debugging purposes.
-
Uses of Label in org.objectweb.asm
Fields in org.objectweb.asm declared as LabelModifier and TypeFieldDescriptionprivate Label
MethodWriter.currentBasicBlock
The current basic block, i.e.(package private) Label[]
The end of each local variable range in the current local variable annotation.(package private) Label[]
The start of each local variable range in the current local variable annotation.(package private) Label[]
Context.currentMethodLabels
The labels of the current method, indexed by bytecode offset (only bytecode offsets for which a label is needed have a non null associated Label).(package private) static final Label
Label.EMPTY_LIST
A sentinel element used to indicate the end of a list of labels.(package private) final Label
Handler.endPc
The end_pc field of this JVMS exception_table entry.private Label
MethodWriter.firstBasicBlock
The first basic block of the method.(package private) final Label
Handler.handlerPc
The handler_pc field of this JVMS exception_table entry.(package private) final Label
SymbolTable.LabelEntry.label
The value of this label entry.private Label
MethodWriter.lastBasicBlock
The last basic block of the method (in bytecode offset order).(package private) Label
Label.nextBasicBlock
The successor of this label, in the order they are visited inMethodVisitor.visitLabel(org.objectweb.asm.Label)
.(package private) Label
Label.nextListElement
The next element in the list of labels to which this label belongs, or null if it does not belong to any list.(package private) Label
Frame.owner
The basic block to which these input and output stack map frames correspond.(package private) final Label
Handler.startPc
The start_pc field of this JVMS exception_table entry.(package private) final Label
Edge.successor
The successor block of this control flow graph edge.Methods in org.objectweb.asm that return LabelModifier and TypeMethodDescriptionprivate Label
ClassReader.createLabel
(int bytecodeOffset, Label[] labels) Creates a label without theFLAG_DEBUG_ONLY
flag set, for the given bytecode offset.(package private) final Label
Label.getCanonicalInstance()
Returns the "canonical"Label
instance corresponding to this label's bytecode offset, if known, otherwise the label itself.(package private) Label
SymbolTable.getForwardUninitializedLabel
(int typeIndex) Returns the label corresponding to the "forward uninitialized" type table element whose index is given.protected Label[]
Attribute.getLabels()
Returns the labels corresponding to this attribute.private Label
Label.pushSuccessors
(Label listOfLabelsToProcess) Adds the successors of this label in the method's control flow graph (except those corresponding to a jsr target, and those already in a list of labels) to the given list of blocks to process, and returns the new list.protected Label
Returns the label corresponding to the given bytecode offset.Methods in org.objectweb.asm with parameters of type LabelModifier and TypeMethodDescription(package private) int
SymbolTable.addForwardUninitializedType
(String value, Label label) Adds a "forward uninitialized" type in the type table of this symbol table.(package private) final void
Label.addSubroutineRetSuccessors
(Label subroutineCaller) Finds the basic blocks that end a subroutine starting with the basic block corresponding to this label and, for each one of them, adds an outgoing edge to the basic block following the given subroutine call.private void
MethodWriter.addSuccessorToCurrentBasicBlock
(int info, Label successor) Adds a successor toMethodWriter.currentBasicBlock
in the control flow graph.private void
ClassReader.createDebugLabel
(int bytecodeOffset, Label[] labels) Creates a label with theFLAG_DEBUG_ONLY
flag set, if there is no already existing label for the given bytecode offset (otherwise does nothing).private Label
ClassReader.createLabel
(int bytecodeOffset, Label[] labels) Creates a label without theFLAG_DEBUG_ONLY
flag set, for the given bytecode offset.private SymbolTable.LabelEntry
SymbolTable.getOrAddLabelEntry
(Label label) Returns theSymbolTable.LabelEntry
corresponding to the given label.private Label
Label.pushSuccessors
(Label listOfLabelsToProcess) Adds the successors of this label in the method's control flow graph (except those corresponding to a jsr target, and those already in a list of labels) to the given list of blocks to process, and returns the new list.protected Attribute
Attribute.read
(ClassReader classReader, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels) Reads aAttribute.type
attribute.private Attribute
ClassReader.readAttribute
(Attribute[] attributePrototypes, String type, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels) Reads a non standard JVMS 'attribute' structure inClassReader.classFileBuffer
.protected Label
Returns the label corresponding to the given bytecode offset.private int
ClassReader.readVerificationTypeInfo
(int verificationTypeInfoOffset, Object[] frame, int index, char[] charBuffer, Label[] labels) Reads a JVMS 'verification_type_info' structure and stores it at the given index in the given array.(package private) static Handler
Handler.removeRange
(Handler firstHandler, Label start, Label end) Removes the range between start and end from the Handler list that begins with the given element.void
MethodVisitor.visitJumpInsn
(int opcode, Label label) Visits a jump instruction.void
MethodWriter.visitJumpInsn
(int opcode, Label label) void
MethodVisitor.visitLabel
(Label label) Visits a label.void
MethodWriter.visitLabel
(Label label) void
MethodVisitor.visitLineNumber
(int line, Label start) Visits a line number declaration.void
MethodWriter.visitLineNumber
(int line, Label start) void
MethodVisitor.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) Visits a local variable declaration.void
MethodWriter.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) MethodVisitor.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) Visits an annotation on a local variable type.MethodWriter.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) void
MethodVisitor.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) Visits a LOOKUPSWITCH instruction.void
MethodWriter.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) private void
MethodWriter.visitSwitchInsn
(Label dflt, Label[] labels) void
MethodVisitor.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) Visits a TABLESWITCH instruction.void
MethodWriter.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
MethodVisitor.visitTryCatchBlock
(Label start, Label end, Label handler, String type) Visits a try catch block.void
MethodWriter.visitTryCatchBlock
(Label start, Label end, Label handler, String type) Constructors in org.objectweb.asm with parameters of type LabelModifierConstructorDescription(package private)
CurrentFrame
(Label owner) (package private)
Constructs a new Edge.(package private)
Constructs a new Frame.(package private)
Constructs a new Handler from the given one, with a different scope.(package private)
Constructs a new Handler.(package private)
LabelEntry
(int index, Label label) -
Uses of Label in org.objectweb.asm.commons
Fields in org.objectweb.asm.commons with type parameters of type LabelModifier and TypeFieldDescriptionAdviceAdapter.forwardJumpStackFrames
The stack map frames corresponding to the labels of the forward jumps made *before* the super class constructor has been called (note that the Java Virtual Machine forbids backward jumps before the super class constructor is called).AnalyzerAdapter.labels
The labels that designate the next instruction to be visited.Methods in org.objectweb.asm.commons that return LabelModifier and TypeMethodDescriptionGeneratorAdapter.mark()
Marks the current code position with a new label.GeneratorAdapter.newLabel()
Constructs a newLabel
.Methods in org.objectweb.asm.commons with parameters of type LabelModifier and TypeMethodDescriptionprivate void
AdviceAdapter.addForwardJump
(Label label) private void
AdviceAdapter.addForwardJumps
(Label dflt, Label[] labels) void
GeneratorAdapter.catchException
(Label start, Label end, Type exception) Marks the start of an exception handler.void
TableSwitchGenerator.generateCase
(int key, Label end) Generates the code for a switch case.void
Generates the instruction to jump to the given label.void
void
void
void
Generates the instructions to jump to a label based on the comparison of the top two stack values.void
void
void
void
Generates the instructions to jump to a label based on the comparison of the top two integer stack values.void
void
void
void
void
void
void
void
void
void
void
Generates the instruction to jump to the given label if the top stack value is not null.void
void
Generates the instruction to jump to the given label if the top stack value is null.void
Generates the instructions to jump to a label based on the comparison of the top integer stack value with zero.void
void
InstructionAdapter.lookupswitch
(Label dflt, int[] keys, Label[] labels) void
Marks the current code position with the given label.void
protected Attribute
ModuleHashesAttribute.read
(ClassReader classReader, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels) protected Attribute
ModuleResolutionAttribute.read
(ClassReader classReader, int offset, int length, char[] charBuffer, int codeOffset, Label[] labels) protected Attribute
ModuleTargetAttribute.read
(ClassReader classReader, int offset, int length, char[] charBuffer, int codeOffset, Label[] labels) void
InstructionAdapter.tableswitch
(int min, int max, Label dflt, Label... labels) void
AdviceAdapter.visitJumpInsn
(int opcode, Label label) void
AnalyzerAdapter.visitJumpInsn
(int opcode, Label label) void
CodeSizeEvaluator.visitJumpInsn
(int opcode, Label label) void
InstructionAdapter.visitJumpInsn
(int opcode, Label label) void
JSRInlinerAdapter.visitJumpInsn
(int opcode, Label label) void
AdviceAdapter.visitLabel
(Label label) void
AnalyzerAdapter.visitLabel
(Label label) void
InstructionAdapter.visitLabel
(Label label) void
AnalyzerAdapter.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) void
LocalVariablesSorter.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) void
MethodRemapper.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) LocalVariablesSorter.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) MethodRemapper.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) void
AdviceAdapter.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
AnalyzerAdapter.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
CodeSizeEvaluator.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
InstructionAdapter.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
AdviceAdapter.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
AnalyzerAdapter.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
CodeSizeEvaluator.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
InstructionAdapter.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
AdviceAdapter.visitTryCatchBlock
(Label start, Label end, Label handler, String type) void
MethodRemapper.visitTryCatchBlock
(Label start, Label end, Label handler, String type) -
Uses of Label in org.objectweb.asm.tree
Fields in org.objectweb.asm.tree declared as LabelMethods in org.objectweb.asm.tree that return LabelModifier and TypeMethodDescriptionLabelNode.getLabel()
Returns the label encapsulated by this node.Methods in org.objectweb.asm.tree with parameters of type LabelModifier and TypeMethodDescriptionprotected LabelNode
MethodNode.getLabelNode
(Label label) Returns the LabelNode corresponding to the given Label.private LabelNode[]
MethodNode.getLabelNodes
(Label[] labels) void
MethodNode.visitJumpInsn
(int opcode, Label label) void
MethodNode.visitLabel
(Label label) void
MethodNode.visitLineNumber
(int line, Label start) void
MethodNode.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) MethodNode.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) void
MethodNode.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
MethodNode.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
MethodNode.visitTryCatchBlock
(Label start, Label end, Label handler, String type) Constructors in org.objectweb.asm.tree with parameters of type Label -
Uses of Label in org.objectweb.asm.util
Fields in org.objectweb.asm.util with type parameters of type LabelModifier and TypeFieldDescriptionCheckMethodAdapter.handlers
The exception handler ranges.CheckClassAdapter.labelInsnIndices
The index of the instruction designated by each visited label so far.CheckMethodAdapter.labelInsnIndices
The index of the instruction designated by each visited label.ASMifier.labelNames
The name of the Label variables in the produced code.Textifier.labelNames
The names of the labels.CheckMethodAdapter.referencedLabels
The labels referenced by the visited method.Methods in org.objectweb.asm.util with parameters of type LabelModifier and TypeMethodDescriptionprotected void
ASMifier.appendLabel
(Label label) Appends the name of the given label toPrinter.stringBuilder
.protected void
Textifier.appendLabel
(Label label) Appends the name of the given label toPrinter.stringBuilder
.private void
CheckMethodAdapter.checkLabel
(Label label, boolean checkVisited, String message) Checks that the given label is not null.protected void
ASMifier.declareLabel
(Label label) Appends a declaration of the given label toPrinter.stringBuilder
.void
ASMifier.visitJumpInsn
(int opcode, Label label) void
CheckMethodAdapter.visitJumpInsn
(int opcode, Label label) abstract void
Printer.visitJumpInsn
(int opcode, Label label) Method jump instruction.void
Textifier.visitJumpInsn
(int opcode, Label label) void
TraceMethodVisitor.visitJumpInsn
(int opcode, Label label) void
ASMifier.visitLabel
(Label label) void
CheckMethodAdapter.visitLabel
(Label label) abstract void
Printer.visitLabel
(Label label) Method label.void
Textifier.visitLabel
(Label label) void
TraceMethodVisitor.visitLabel
(Label label) void
ASMifier.visitLineNumber
(int line, Label start) void
CheckMethodAdapter.visitLineNumber
(int line, Label start) abstract void
Printer.visitLineNumber
(int line, Label start) Method debug info.void
Textifier.visitLineNumber
(int line, Label start) void
TraceMethodVisitor.visitLineNumber
(int line, Label start) void
ASMifier.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) void
CheckMethodAdapter.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) abstract void
Printer.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) Method debug info.void
Textifier.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) void
TraceMethodVisitor.visitLocalVariable
(String name, String descriptor, String signature, Label start, Label end, int index) ASMifier.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) CheckMethodAdapter.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) Printer.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) Local variable type annotation.Textifier.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) TraceMethodVisitor.visitLocalVariableAnnotation
(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, String descriptor, boolean visible) void
ASMifier.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
CheckMethodAdapter.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) abstract void
Printer.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) Method instruction.void
Textifier.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
TraceMethodVisitor.visitLookupSwitchInsn
(Label dflt, int[] keys, Label[] labels) void
ASMifier.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
CheckMethodAdapter.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) abstract void
Printer.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) Method instruction.void
Textifier.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
TraceMethodVisitor.visitTableSwitchInsn
(int min, int max, Label dflt, Label... labels) void
ASMifier.visitTryCatchBlock
(Label start, Label end, Label handler, String type) void
CheckMethodAdapter.visitTryCatchBlock
(Label start, Label end, Label handler, String type) abstract void
Printer.visitTryCatchBlock
(Label start, Label end, Label handler, String type) Method exception handler.void
Textifier.visitTryCatchBlock
(Label start, Label end, Label handler, String type) void
TraceMethodVisitor.visitTryCatchBlock
(Label start, Label end, Label handler, String type) Method parameters in org.objectweb.asm.util with type arguments of type LabelModifier and TypeMethodDescriptionvoid
ASMifierSupport.asmify
(StringBuilder outputBuilder, String visitorVariableName, Map<Label, String> labelNames) Generates the ASM code to create an attribute equal to this attribute.void
TextifierSupport.textify
(StringBuilder outputBuilder, Map<Label, String> labelNames) Generates a human readable representation of this attribute.Constructor parameters in org.objectweb.asm.util with type arguments of type LabelModifierConstructorDescriptionprotected
CheckMethodAdapter
(int api, int access, String name, String descriptor, MethodVisitor methodVisitor, Map<Label, Integer> labelInsnIndices) Constructs a newCheckMethodAdapter
object.CheckMethodAdapter
(int access, String name, String descriptor, MethodVisitor methodVisitor, Map<Label, Integer> labelInsnIndices) Constructs a newCheckMethodAdapter
object.protected
CheckMethodAdapter
(int api, MethodVisitor methodVisitor, Map<Label, Integer> labelInsnIndices) Constructs a newCheckMethodAdapter
object.CheckMethodAdapter
(MethodVisitor methodVisitor, Map<Label, Integer> labelInsnIndices) Constructs a newCheckMethodAdapter
object.