public final class com.sun.org.apache.bcel.internal.generic.BranchHandle extends com.sun.org.apache.bcel.internal.generic.InstructionHandle
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.org.apache.bcel.internal.generic.BranchHandle
super_class: com.sun.org.apache.bcel.internal.generic.InstructionHandle
{
private com.sun.org.apache.bcel.internal.generic.BranchInstruction bi;
descriptor: Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
flags: (0x0002) ACC_PRIVATE
private static com.sun.org.apache.bcel.internal.generic.BranchHandle bh_list;
descriptor: Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
putstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(com.sun.org.apache.bcel.internal.generic.BranchInstruction);
descriptor: (Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionHandle.<init>:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)V
1: aload 0
aload 1
putfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 3 1 i Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
MethodParameters:
Name Flags
i final
static com.sun.org.apache.bcel.internal.generic.BranchHandle getBranchHandle(com.sun.org.apache.bcel.internal.generic.BranchInstruction);
descriptor: (Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;)Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
ifnonnull 2
1: new com.sun.org.apache.bcel.internal.generic.BranchHandle
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.generic.BranchHandle.<init>:(Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;)V
areturn
2: StackMap locals:
StackMap stack:
getstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
astore 1
start local 1 3: aload 1
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchHandle.getNext:()Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
checkcast com.sun.org.apache.bcel.internal.generic.BranchHandle
putstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
4: aload 1
aload 0
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchHandle.setInstruction:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)V
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
3 6 1 bh Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
MethodParameters:
Name Flags
i final
protected void addHandle();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionHandle.setNext:(Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
1: aload 0
putstatic com.sun.org.apache.bcel.internal.generic.BranchHandle.bh_list:Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
public int getPosition();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.getPosition:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
void setPosition(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
iload 1
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.setPosition:(I)V
1: aload 0
iload 1
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionHandle.setPosition:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 3 1 pos I
MethodParameters:
Name Flags
pos final
protected int updatePosition(int, int);
descriptor: (II)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
iload 1
iload 2
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.updatePosition:(II)I
istore 3
start local 3 1: aload 0
aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.getPosition:()I
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionHandle.setPosition:(I)V
2: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 3 1 offset I
0 3 2 max_offset I
1 3 3 x I
MethodParameters:
Name Flags
offset final
max_offset final
public void setTarget(com.sun.org.apache.bcel.internal.generic.InstructionHandle);
descriptor: (Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
aload 1
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.setTarget:(Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 2 1 ih Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
MethodParameters:
Name Flags
ih final
public void updateTarget(com.sun.org.apache.bcel.internal.generic.InstructionHandle, com.sun.org.apache.bcel.internal.generic.InstructionHandle);
descriptor: (Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
aload 1
aload 2
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.updateTarget:(Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 2 1 old_ih Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
0 2 2 new_ih Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
MethodParameters:
Name Flags
old_ih final
new_ih final
public com.sun.org.apache.bcel.internal.generic.InstructionHandle getTarget();
descriptor: ()Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.BranchInstruction.getTarget:()Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
public void setInstruction(com.sun.org.apache.bcel.internal.generic.Instruction);
descriptor: (Lcom/sun/org/apache/bcel/internal/generic/Instruction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionHandle.setInstruction:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)V
1: aload 1
instanceof com.sun.org.apache.bcel.internal.generic.BranchInstruction
ifne 5
2: new com.sun.org.apache.bcel.internal.generic.ClassGenException
dup
new java.lang.StringBuilder
dup
ldc "Assigning "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc " to branch handle which is not a branch instruction"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial com.sun.org.apache.bcel.internal.generic.ClassGenException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast com.sun.org.apache.bcel.internal.generic.BranchInstruction
putfield com.sun.org.apache.bcel.internal.generic.BranchHandle.bi:Lcom/sun/org/apache/bcel/internal/generic/BranchInstruction;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/org/apache/bcel/internal/generic/BranchHandle;
0 7 1 i Lcom/sun/org/apache/bcel/internal/generic/Instruction;
MethodParameters:
Name Flags
i final
}
SourceFile: "BranchHandle.java"