public abstract class org.objectweb.asm.commons.AdviceAdapter extends org.objectweb.asm.commons.GeneratorAdapter implements org.objectweb.asm.Opcodes
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.objectweb.asm.commons.AdviceAdapter
super_class: org.objectweb.asm.commons.GeneratorAdapter
{
private static final java.lang.Object UNINITIALIZED_THIS;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.Object OTHER;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String INVALID_OPCODE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Invalid opcode "
protected int methodAccess;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected java.lang.String methodDesc;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
private final boolean isConstructor;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean superClassConstructorCalled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.List<java.lang.Object> stackFrame;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/Object;>;
private java.util.Map<org.objectweb.asm.Label, java.util.List<java.lang.Object>> forwardJumpStackFrames;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Lorg/objectweb/asm/Label;Ljava/util/List<Ljava/lang/Object;>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic org.objectweb.asm.commons.AdviceAdapter.UNINITIALIZED_THIS:Ljava/lang/Object;
1: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
2: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(int, org.objectweb.asm.MethodVisitor, int, java.lang.String, java.lang.String);
descriptor: (ILorg/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 1
aload 2
iload 3
aload 4
aload 5
invokespecial org.objectweb.asm.commons.GeneratorAdapter.<init>:(ILorg/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
1: aload 0
iload 3
putfield org.objectweb.asm.commons.AdviceAdapter.methodAccess:I
2: aload 0
aload 5
putfield org.objectweb.asm.commons.AdviceAdapter.methodDesc:Ljava/lang/String;
3: aload 0
ldc "<init>"
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
putfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
4: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 5 1 api I
0 5 2 methodVisitor Lorg/objectweb/asm/MethodVisitor;
0 5 3 access I
0 5 4 name Ljava/lang/String;
0 5 5 descriptor Ljava/lang/String;
MethodParameters:
Name Flags
api final
methodVisitor final
access final
name final
descriptor final
public void visitCode();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitCode:()V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 5
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
3: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodEnter:()V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
public void visitLabel(org.objectweb.asm.Label);
descriptor: (Lorg/objectweb/asm/Label;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitLabel:(Lorg/objectweb/asm/Label;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 7
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
ifnull 7
2: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 2
start local 2 3: aload 2
ifnull 7
4: aload 0
aload 2
putfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
5: aload 0
iconst_0
putfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
6: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 8 1 label Lorg/objectweb/asm/Label;
3 7 2 labelStackFrame Ljava/util/List<Ljava/lang/Object;>;
MethodParameters:
Name Flags
label final
public void visitInsn(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 56
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 56
1: iload 1
tableswitch { // 0 - 195
0: 10
1: 11
2: 11
3: 11
4: 11
5: 11
6: 11
7: 11
8: 11
9: 13
10: 13
11: 11
12: 11
13: 11
14: 13
15: 13
16: 54
17: 54
18: 54
19: 54
20: 54
21: 54
22: 54
23: 54
24: 54
25: 54
26: 54
27: 54
28: 54
29: 54
30: 54
31: 54
32: 54
33: 54
34: 54
35: 54
36: 54
37: 54
38: 54
39: 54
40: 54
41: 54
42: 54
43: 54
44: 54
45: 54
46: 16
47: 10
48: 16
49: 10
50: 16
51: 16
52: 16
53: 16
54: 54
55: 54
56: 54
57: 54
58: 54
59: 54
60: 54
61: 54
62: 54
63: 54
64: 54
65: 54
66: 54
67: 54
68: 54
69: 54
70: 54
71: 54
72: 54
73: 54
74: 54
75: 54
76: 54
77: 54
78: 54
79: 21
80: 25
81: 21
82: 25
83: 21
84: 21
85: 21
86: 21
87: 16
88: 18
89: 30
90: 32
91: 35
92: 38
93: 42
94: 46
95: 50
96: 16
97: 18
98: 16
99: 18
100: 16
101: 18
102: 16
103: 18
104: 16
105: 18
106: 16
107: 18
108: 16
109: 18
110: 16
111: 18
112: 16
113: 18
114: 16
115: 18
116: 10
117: 10
118: 10
119: 10
120: 16
121: 16
122: 16
123: 16
124: 16
125: 16
126: 16
127: 18
128: 16
129: 18
130: 16
131: 18
132: 54
133: 11
134: 10
135: 11
136: 16
137: 16
138: 10
139: 10
140: 11
141: 11
142: 16
143: 10
144: 16
145: 10
146: 10
147: 10
148: 21
149: 16
150: 16
151: 21
152: 21
153: 54
154: 54
155: 54
156: 54
157: 54
158: 54
159: 54
160: 54
161: 54
162: 54
163: 54
164: 54
165: 54
166: 54
167: 54
168: 54
169: 54
170: 54
171: 54
172: 2
173: 2
174: 2
175: 2
176: 2
177: 3
178: 54
179: 54
180: 54
181: 54
182: 54
183: 54
184: 54
185: 54
186: 54
187: 54
188: 54
189: 54
190: 10
191: 6
192: 54
193: 54
194: 16
195: 16
default: 54
}
2: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Invalid return in constructor"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
4: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
5: goto 59
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
7: aload 0
iload 1
invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
8: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
9: goto 59
10: StackMap locals:
StackMap stack:
goto 59
11: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
12: goto 59
13: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
14: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
15: goto 59
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
17: goto 59
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
19: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
20: goto 59
21: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
22: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
23: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
24: goto 59
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
26: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
27: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
28: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
29: goto 59
30: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.peekValue:()Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
31: goto 59
32: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 33: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_2
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
34: goto 59
end local 2 35: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 36: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_3
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
37: goto 59
end local 2 38: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 39: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_2
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
40: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_2
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
41: goto 59
end local 2 42: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 43: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_3
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
44: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_3
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
45: goto 59
end local 2 46: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 47: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_4
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
48: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_4
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
49: goto 59
end local 2 50: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 51: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_2
isub
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
52: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
iload 2
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
53: goto 59
end local 2 54: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid opcode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
55: StackMap locals:
StackMap stack:
goto 59
56: StackMap locals:
StackMap stack:
iload 1
lookupswitch { // 7
172: 57
173: 57
174: 57
175: 57
176: 57
177: 57
191: 57
default: 59
}
57: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodExit:(I)V
58: goto 59
59: StackMap locals:
StackMap stack:
aload 0
iload 1
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitInsn:(I)V
60: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 61 1 opcode I
33 35 2 stackSize I
36 38 2 stackSize I
39 42 2 stackSize I
43 46 2 stackSize I
47 50 2 stackSize I
51 54 2 stackSize I
MethodParameters:
Name Flags
opcode final
public void visitVarInsn(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 2
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitVarInsn:(II)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 20
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 20
2: iload 1
lookupswitch { // 11
21: 3
22: 5
23: 3
24: 5
25: 8
54: 12
55: 14
56: 12
57: 14
58: 12
169: 17
default: 19
}
3: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
4: goto 20
5: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
6: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
7: goto 20
8: StackMap locals:
StackMap stack:
aload 0
iload 2
ifne 9
getstatic org.objectweb.asm.commons.AdviceAdapter.UNINITIALIZED_THIS:Ljava/lang/Object;
goto 10
StackMap locals:
StackMap stack: org.objectweb.asm.commons.AdviceAdapter
9: getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
StackMap locals: org.objectweb.asm.commons.AdviceAdapter int int
StackMap stack: org.objectweb.asm.commons.AdviceAdapter java.lang.Object
10: invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
11: goto 20
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
13: goto 20
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
15: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
16: goto 20
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
18: goto 20
19: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid opcode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 21 1 opcode I
0 21 2 var I
MethodParameters:
Name Flags
opcode final
var final
public void visitFieldInsn(int, java.lang.String, java.lang.String, java.lang.String);
descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
aload 2
aload 3
aload 4
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 24
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 24
2: aload 4
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 3: iload 5
bipush 74
if_icmpeq 4
iload 5
bipush 68
if_icmpeq 4
iconst_0
goto 5
StackMap locals: int
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: istore 6
start local 6 6: iload 1
tableswitch { // 178 - 181
178: 7
179: 11
180: 20
181: 15
default: 23
}
7: StackMap locals: int
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
8: iload 6
ifeq 24
9: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
10: goto 24
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
12: iload 6
ifeq 24
13: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
14: goto 24
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
16: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
17: iload 6
ifeq 24
18: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
19: goto 24
20: StackMap locals:
StackMap stack:
iload 6
ifeq 24
21: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
22: goto 24
23: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid opcode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 24: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 25 1 opcode I
0 25 2 owner Ljava/lang/String;
0 25 3 name Ljava/lang/String;
0 25 4 descriptor Ljava/lang/String;
3 24 5 firstDescriptorChar C
6 24 6 longOrDouble Z
MethodParameters:
Name Flags
opcode final
owner final
name final
descriptor final
public void visitIntInsn(int, int);
descriptor: (II)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
iload 1
iload 2
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitIntInsn:(II)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 3
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 3
iload 1
sipush 188
if_icmpeq 3
2: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 4 1 opcode I
0 4 2 operand I
MethodParameters:
Name Flags
opcode final
operand final
public void visitLdcInsn(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitLdcInsn:(Ljava/lang/Object;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 7
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 7
2: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
3: aload 1
instanceof java.lang.Double
ifne 6
4: aload 1
instanceof java.lang.Long
ifne 6
5: aload 1
instanceof org.objectweb.asm.ConstantDynamic
ifeq 7
aload 1
checkcast org.objectweb.asm.ConstantDynamic
invokevirtual org.objectweb.asm.ConstantDynamic.getSize:()I
iconst_2
if_icmpne 7
6: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 8 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
value final
public void visitMultiANewArrayInsn(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitMultiANewArrayInsn:(Ljava/lang/String;I)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 8
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 8
2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iload 2
if_icmplt 4
end local 3 7: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 9 1 descriptor Ljava/lang/String;
0 9 2 numDimensions I
3 7 3 i I
MethodParameters:
Name Flags
descriptor final
numDimensions final
public void visitTypeInsn(int, java.lang.String);
descriptor: (ILjava/lang/String;)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
iload 1
aload 2
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitTypeInsn:(ILjava/lang/String;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 3
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 3
iload 1
sipush 187
if_icmpne 3
2: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 4 1 opcode I
0 4 2 type Ljava/lang/String;
MethodParameters:
Name Flags
opcode final
type final
public void visitMethodInsn(int, java.lang.String, java.lang.String, java.lang.String, boolean);
descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.api:I
ldc 327680
if_icmpge 3
iload 1
sipush 256
iand
ifne 3
1: aload 0
iload 1
aload 2
aload 3
aload 4
iload 5
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
2: return
3: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 2
aload 3
aload 4
iload 5
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
4: iload 1
sipush -257
iand
istore 6
start local 6 5: aload 0
iload 6
aload 3
aload 4
invokevirtual org.objectweb.asm.commons.AdviceAdapter.doVisitMethodInsn:(ILjava/lang/String;Ljava/lang/String;)V
6: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 7 1 opcodeAndSource I
0 7 2 owner Ljava/lang/String;
0 7 3 name Ljava/lang/String;
0 7 4 descriptor Ljava/lang/String;
0 7 5 isInterface Z
5 7 6 opcode I
MethodParameters:
Name Flags
opcodeAndSource final
owner final
name final
descriptor final
isInterface final
private void doVisitMethodInsn(int, java.lang.String, java.lang.String);
descriptor: (ILjava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 23
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 23
1: aload 3
invokestatic org.objectweb.asm.Type.getArgumentTypes:(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 7
StackMap locals: org.objectweb.asm.commons.AdviceAdapter int java.lang.String java.lang.String top int int org.objectweb.asm.Type[]
StackMap stack:
2: aload 7
iload 5
aaload
astore 4
start local 4 3: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
4: aload 4
invokevirtual org.objectweb.asm.Type.getSize:()I
iconst_2
if_icmpne 6
5: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
end local 4 6: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 6
if_icmplt 2
8: iload 1
tableswitch { // 182 - 185
182: 9
183: 11
184: 18
185: 9
default: 18
}
9: StackMap locals: org.objectweb.asm.commons.AdviceAdapter int java.lang.String java.lang.String
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
10: goto 18
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
astore 4
start local 4 12: aload 4
getstatic org.objectweb.asm.commons.AdviceAdapter.UNINITIALIZED_THIS:Ljava/lang/Object;
if_acmpne 18
13: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 18
14: aload 2
ldc "<init>"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
15: aload 0
iconst_1
putfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
16: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.onMethodEnter:()V
17: goto 18
end local 4 18: StackMap locals:
StackMap stack:
aload 3
invokestatic org.objectweb.asm.Type.getReturnType:(Ljava/lang/String;)Lorg/objectweb/asm/Type;
astore 4
start local 4 19: aload 4
getstatic org.objectweb.asm.Type.VOID_TYPE:Lorg/objectweb/asm/Type;
if_acmpeq 23
20: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
21: aload 4
invokevirtual org.objectweb.asm.Type.getSize:()I
iconst_2
if_icmpne 23
22: aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
end local 4 23: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 24 1 opcode I
0 24 2 name Ljava/lang/String;
0 24 3 descriptor Ljava/lang/String;
3 6 4 argumentType Lorg/objectweb/asm/Type;
12 18 4 value Ljava/lang/Object;
19 23 4 returnType Lorg/objectweb/asm/Type;
MethodParameters:
Name Flags
opcode final
name final
descriptor final
public void visitInvokeDynamicInsn(java.lang.String, java.lang.String, org.objectweb.asm.Handle, java.lang.Object[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
1: aload 0
sipush 186
aload 1
aload 2
invokevirtual org.objectweb.asm.commons.AdviceAdapter.doVisitMethodInsn:(ILjava/lang/String;Ljava/lang/String;)V
2: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 3 1 name Ljava/lang/String;
0 3 2 descriptor Ljava/lang/String;
0 3 3 bootstrapMethodHandle Lorg/objectweb/asm/Handle;
0 3 4 bootstrapMethodArguments [Ljava/lang/Object;
MethodParameters:
Name Flags
name final
descriptor final
bootstrapMethodHandle final
bootstrapMethodArguments final
public void visitJumpInsn(int, org.objectweb.asm.Label);
descriptor: (ILorg/objectweb/asm/Label;)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
iload 1
aload 2
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitJumpInsn:(ILorg/objectweb/asm/Label;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 13
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 13
2: iload 1
lookupswitch { // 18
153: 3
154: 3
155: 3
156: 3
157: 3
158: 3
159: 5
160: 5
161: 5
162: 5
163: 5
164: 5
165: 5
166: 5
167: 10
168: 8
198: 3
199: 3
default: 12
}
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
4: goto 12
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
6: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
7: goto 12
8: StackMap locals:
StackMap stack:
aload 0
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokevirtual org.objectweb.asm.commons.AdviceAdapter.pushValue:(Ljava/lang/Object;)V
9: goto 12
10: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
11: goto 12
12: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.objectweb.asm.commons.AdviceAdapter.addForwardJump:(Lorg/objectweb/asm/Label;)V
13: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 14 1 opcode I
0 14 2 label Lorg/objectweb/asm/Label;
MethodParameters:
Name Flags
opcode final
label final
public void visitLookupSwitchInsn(org.objectweb.asm.Label, int[], org.objectweb.asm.Label[]);
descriptor: (Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitLookupSwitchInsn:(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 5
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 5
2: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
3: aload 0
aload 1
aload 3
invokevirtual org.objectweb.asm.commons.AdviceAdapter.addForwardJumps:(Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
4: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 6 1 dflt Lorg/objectweb/asm/Label;
0 6 2 keys [I
0 6 3 labels [Lorg/objectweb/asm/Label;
MethodParameters:
Name Flags
dflt final
keys final
labels final
public void visitTableSwitchInsn(int, int, org.objectweb.asm.Label, org.objectweb.asm.Label[]);
descriptor: (IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
aload 3
aload 4
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitTableSwitchInsn:(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 5
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
ifne 5
2: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.popValue:()Ljava/lang/Object;
pop
3: aload 0
aload 3
aload 4
invokevirtual org.objectweb.asm.commons.AdviceAdapter.addForwardJumps:(Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
4: aload 0
invokevirtual org.objectweb.asm.commons.AdviceAdapter.endConstructorBasicBlockWithoutSuccessor:()V
5: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 6 1 min I
0 6 2 max I
0 6 3 dflt Lorg/objectweb/asm/Label;
0 6 4 labels [Lorg/objectweb/asm/Label;
MethodParameters:
Name Flags
min final
max final
dflt final
labels final
public void visitTryCatchBlock(org.objectweb.asm.Label, org.objectweb.asm.Label, org.objectweb.asm.Label, java.lang.String);
descriptor: (Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial org.objectweb.asm.commons.GeneratorAdapter.visitTryCatchBlock:(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
1: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.isConstructor:Z
ifeq 5
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 5
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
start local 5 3: aload 5
getstatic org.objectweb.asm.commons.AdviceAdapter.OTHER:Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 3
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 5: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 6 1 start Lorg/objectweb/asm/Label;
0 6 2 end Lorg/objectweb/asm/Label;
0 6 3 handler Lorg/objectweb/asm/Label;
0 6 4 type Ljava/lang/String;
3 5 5 handlerStackFrame Ljava/util/List<Ljava/lang/Object;>;
MethodParameters:
Name Flags
start final
end final
handler final
type final
private void addForwardJumps(org.objectweb.asm.Label, org.objectweb.asm.Label[]);
descriptor: (Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.objectweb.asm.commons.AdviceAdapter.addForwardJump:(Lorg/objectweb/asm/Label;)V
1: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 5
StackMap locals: org.objectweb.asm.commons.AdviceAdapter org.objectweb.asm.Label org.objectweb.asm.Label[] top int int org.objectweb.asm.Label[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 0
aload 3
invokevirtual org.objectweb.asm.commons.AdviceAdapter.addForwardJump:(Lorg/objectweb/asm/Label;)V
end local 3 4: iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
iload 5
if_icmplt 2
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 7 1 dflt Lorg/objectweb/asm/Label;
0 7 2 labels [Lorg/objectweb/asm/Label;
3 4 3 label Lorg/objectweb/asm/Label;
MethodParameters:
Name Flags
dflt final
labels final
private void addForwardJump(org.objectweb.asm.Label);
descriptor: (Lorg/objectweb/asm/Label;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.forwardJumpStackFrames:Ljava/util/Map;
aload 1
new java.util.ArrayList
dup
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 4 1 label Lorg/objectweb/asm/Label;
MethodParameters:
Name Flags
label final
private void endConstructorBasicBlockWithoutSuccessor();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield org.objectweb.asm.commons.AdviceAdapter.superClassConstructorCalled:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
private java.lang.Object popValue();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
private java.lang.Object peekValue();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
private void pushValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.objectweb.asm.commons.AdviceAdapter.stackFrame:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 2 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
value final
protected void onMethodEnter();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
protected void onMethodExit(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/objectweb/asm/commons/AdviceAdapter;
0 1 1 opcode I
MethodParameters:
Name Flags
opcode final
}
SourceFile: "AdviceAdapter.java"