Uses of Class
org.datanucleus.enhancer.asm.Label
-
Packages that use Label Package Description org.datanucleus.enhancer DataNucleus ByteCode enhancer framework.org.datanucleus.enhancer.asm ASM : a small and fast bytecode manipulation framework. -
-
Uses of Label in org.datanucleus.enhancer
Methods in org.datanucleus.enhancer with parameters of type Label Modifier and Type Method Description void
EnhancerCloneAdapter. visitJumpInsn(int arg0, Label arg1)
void
EnhancerPropertyGetterAdapter. visitJumpInsn(int arg0, Label arg1)
void
EnhancerPropertySetterAdapter. visitJumpInsn(int arg0, Label arg1)
void
EnhancerCloneAdapter. visitLabel(Label arg0)
void
EnhancerMethodAdapter. visitLabel(Label label)
void
EnhancerPropertyGetterAdapter. visitLabel(Label arg0)
void
EnhancerPropertySetterAdapter. visitLabel(Label arg0)
void
EnhancerCloneAdapter. visitLineNumber(int arg0, Label arg1)
void
EnhancerPropertyGetterAdapter. visitLineNumber(int arg0, Label arg1)
void
EnhancerPropertySetterAdapter. visitLineNumber(int arg0, Label arg1)
void
EnhancerCloneAdapter. visitLocalVariable(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2, Label arg3, Label arg4, int arg5)
void
EnhancerPropertyGetterAdapter. visitLocalVariable(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2, Label arg3, Label arg4, int arg5)
void
EnhancerPropertySetterAdapter. visitLocalVariable(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2, Label arg3, Label arg4, int arg5)
AnnotationVisitor
EnhancerCloneAdapter. visitLocalVariableAnnotation(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, java.lang.String desc, boolean visible)
AnnotationVisitor
EnhancerPropertyGetterAdapter. visitLocalVariableAnnotation(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, java.lang.String desc, boolean visible)
AnnotationVisitor
EnhancerPropertySetterAdapter. visitLocalVariableAnnotation(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, java.lang.String desc, boolean visible)
void
EnhancerCloneAdapter. visitLookupSwitchInsn(Label arg0, int[] arg1, Label[] arg2)
void
EnhancerPropertyGetterAdapter. visitLookupSwitchInsn(Label arg0, int[] arg1, Label[] arg2)
void
EnhancerPropertySetterAdapter. visitLookupSwitchInsn(Label arg0, int[] arg1, Label[] arg2)
void
EnhancerCloneAdapter. visitTableSwitchInsn(int arg0, int arg1, Label arg2, Label... arg3)
void
EnhancerPropertyGetterAdapter. visitTableSwitchInsn(int arg0, int arg1, Label arg2, Label... arg3)
void
EnhancerPropertySetterAdapter. visitTableSwitchInsn(int arg0, int arg1, Label arg2, Label... arg3)
void
EnhancerCloneAdapter. visitTryCatchBlock(Label arg0, Label arg1, Label arg2, java.lang.String arg3)
void
EnhancerPropertyGetterAdapter. visitTryCatchBlock(Label arg0, Label arg1, Label arg2, java.lang.String arg3)
void
EnhancerPropertySetterAdapter. visitTryCatchBlock(Label arg0, Label arg1, Label arg2, java.lang.String arg3)
-
Uses of Label in org.datanucleus.enhancer.asm
Fields in org.datanucleus.enhancer.asm declared as Label Modifier and Type Field Description private Label
MethodWriter. currentBasicBlock
The current basic block, i.e.(package private) Label[]
Context. currentLocalVariableAnnotationRangeEnds
The end of each local variable range in the current local variable annotation.(package private) Label[]
Context. currentLocalVariableAnnotationRangeStarts
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 Label
Label. EMPTY_LIST
A sentinel element used to indicate the end of a list of labels.(package private) 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) Label
Handler. handlerPc
The handler_pc field of this JVMS exception_table 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.datanucleus.enhancer.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) Label
Handler. startPc
The start_pc field of this JVMS exception_table entry.(package private) Label
Edge. successor
The successor block of this control flow graph edge.Methods in org.datanucleus.enhancer.asm that return Label Modifier and Type Method Description private Label
ClassReader. createLabel(int bytecodeOffset, Label[] labels)
Creates a label without theFLAG_DEBUG_ONLY
flag set, for the given bytecode offset.(package private) Label
Label. getCanonicalInstance()
Returns the "canonical"Label
instance corresponding to this label's bytecode offset, if known, otherwise the label itself.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
ClassReader. readLabel(int bytecodeOffset, Label[] labels)
Returns the label corresponding to the given bytecode offset.Methods in org.datanucleus.enhancer.asm with parameters of type Label Modifier and Type Method Description (package private) 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 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, java.lang.String type, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels)
Reads a non standard JVMS 'attribute' structure inClassReader.classFileBuffer
.protected Label
ClassReader. readLabel(int bytecodeOffset, Label[] labels)
Returns the label corresponding to the given bytecode offset.private int
ClassReader. readVerificationTypeInfo(int verificationTypeInfoOffset, java.lang.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(java.lang.String name, java.lang.String descriptor, java.lang.String signature, Label start, Label end, int index)
Visits a local variable declaration.void
MethodWriter. visitLocalVariable(java.lang.String name, java.lang.String descriptor, java.lang.String signature, Label start, Label end, int index)
AnnotationVisitor
MethodVisitor. visitLocalVariableAnnotation(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, java.lang.String descriptor, boolean visible)
Visits an annotation on a local variable type.AnnotationVisitor
MethodWriter. visitLocalVariableAnnotation(int typeRef, TypePath typePath, Label[] start, Label[] end, int[] index, java.lang.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, java.lang.String type)
Visits a try catch block.void
MethodWriter. visitTryCatchBlock(Label start, Label end, Label handler, java.lang.String type)
Constructors in org.datanucleus.enhancer.asm with parameters of type Label Constructor Description CurrentFrame(Label owner)
Edge(int info, Label successor, Edge nextEdge)
Constructs a new Edge.Frame(Label owner)
Constructs a new Frame.Handler(Handler handler, Label startPc, Label endPc)
Constructs a new Handler from the given one, with a different scope.Handler(Label startPc, Label endPc, Label handlerPc, int catchType, java.lang.String catchTypeDescriptor)
Constructs a new Handler.
-