public class org.apache.bcel.verifier.structurals.ExceptionHandlers
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.bcel.verifier.structurals.ExceptionHandlers
super_class: java.lang.Object
{
private final java.util.Map<org.apache.bcel.generic.InstructionHandle, java.util.Set<org.apache.bcel.verifier.structurals.ExceptionHandler>> exceptionHandlers;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lorg/apache/bcel/generic/InstructionHandle;Ljava/util/Set<Lorg/apache/bcel/verifier/structurals/ExceptionHandler;>;>;
public void <init>(org.apache.bcel.generic.MethodGen);
descriptor: (Lorg/apache/bcel/generic/MethodGen;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=2
start local 0 // org.apache.bcel.verifier.structurals.ExceptionHandlers this
start local 1 // org.apache.bcel.generic.MethodGen mg
0: .line 44
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 45
aload 0 /* this */
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.apache.bcel.verifier.structurals.ExceptionHandlers.exceptionHandlers:Ljava/util/Map;
2: .line 46
aload 1 /* mg */
invokevirtual org.apache.bcel.generic.MethodGen.getExceptionHandlers:()[Lorg/apache/bcel/generic/CodeExceptionGen;
astore 2 /* cegs */
start local 2 // org.apache.bcel.generic.CodeExceptionGen[] cegs
3: .line 47
aload 2 /* cegs */
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 16
StackMap locals: org.apache.bcel.verifier.structurals.ExceptionHandlers org.apache.bcel.generic.MethodGen org.apache.bcel.generic.CodeExceptionGen[] top int int org.apache.bcel.generic.CodeExceptionGen[]
StackMap stack:
4: aload 6
iload 4
aaload
astore 3 /* ceg */
start local 3 // org.apache.bcel.generic.CodeExceptionGen ceg
5: .line 48
new org.apache.bcel.verifier.structurals.ExceptionHandler
dup
aload 3 /* ceg */
invokevirtual org.apache.bcel.generic.CodeExceptionGen.getCatchType:()Lorg/apache/bcel/generic/ObjectType;
aload 3 /* ceg */
invokevirtual org.apache.bcel.generic.CodeExceptionGen.getHandlerPC:()Lorg/apache/bcel/generic/InstructionHandle;
invokespecial org.apache.bcel.verifier.structurals.ExceptionHandler.<init>:(Lorg/apache/bcel/generic/ObjectType;Lorg/apache/bcel/generic/InstructionHandle;)V
astore 7 /* eh */
start local 7 // org.apache.bcel.verifier.structurals.ExceptionHandler eh
6: .line 49
aload 3 /* ceg */
invokevirtual org.apache.bcel.generic.CodeExceptionGen.getStartPC:()Lorg/apache/bcel/generic/InstructionHandle;
astore 8 /* ih */
start local 8 // org.apache.bcel.generic.InstructionHandle ih
7: goto 14
8: .line 51
StackMap locals: org.apache.bcel.verifier.structurals.ExceptionHandlers org.apache.bcel.generic.MethodGen org.apache.bcel.generic.CodeExceptionGen[] org.apache.bcel.generic.CodeExceptionGen int int org.apache.bcel.generic.CodeExceptionGen[] org.apache.bcel.verifier.structurals.ExceptionHandler org.apache.bcel.generic.InstructionHandle
StackMap stack:
aload 0 /* this */
getfield org.apache.bcel.verifier.structurals.ExceptionHandlers.exceptionHandlers:Ljava/util/Map;
aload 8 /* ih */
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 9 /* hs */
start local 9 // java.util.Set hs
9: .line 52
aload 9 /* hs */
ifnonnull 12
10: .line 53
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 9 /* hs */
11: .line 54
aload 0 /* this */
getfield org.apache.bcel.verifier.structurals.ExceptionHandlers.exceptionHandlers:Ljava/util/Map;
aload 8 /* ih */
aload 9 /* hs */
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
12: .line 56
StackMap locals: java.util.Set
StackMap stack:
aload 9 /* hs */
aload 7 /* eh */
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 9 // java.util.Set hs
13: .line 49
aload 8 /* ih */
invokevirtual org.apache.bcel.generic.InstructionHandle.getNext:()Lorg/apache/bcel/generic/InstructionHandle;
astore 8 /* ih */
StackMap locals:
StackMap stack:
14: aload 8 /* ih */
aload 3 /* ceg */
invokevirtual org.apache.bcel.generic.CodeExceptionGen.getEndPC:()Lorg/apache/bcel/generic/InstructionHandle;
invokevirtual org.apache.bcel.generic.InstructionHandle.getNext:()Lorg/apache/bcel/generic/InstructionHandle;
if_acmpne 8
end local 8 // org.apache.bcel.generic.InstructionHandle ih
end local 7 // org.apache.bcel.verifier.structurals.ExceptionHandler eh
end local 3 // org.apache.bcel.generic.CodeExceptionGen ceg
15: .line 47
iinc 4 1
StackMap locals: org.apache.bcel.verifier.structurals.ExceptionHandlers org.apache.bcel.generic.MethodGen org.apache.bcel.generic.CodeExceptionGen[] top int int org.apache.bcel.generic.CodeExceptionGen[]
StackMap stack:
16: iload 4
iload 5
if_icmplt 4
17: .line 59
return
end local 2 // org.apache.bcel.generic.CodeExceptionGen[] cegs
end local 1 // org.apache.bcel.generic.MethodGen mg
end local 0 // org.apache.bcel.verifier.structurals.ExceptionHandlers this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/bcel/verifier/structurals/ExceptionHandlers;
0 18 1 mg Lorg/apache/bcel/generic/MethodGen;
3 18 2 cegs [Lorg/apache/bcel/generic/CodeExceptionGen;
5 15 3 ceg Lorg/apache/bcel/generic/CodeExceptionGen;
6 15 7 eh Lorg/apache/bcel/verifier/structurals/ExceptionHandler;
7 15 8 ih Lorg/apache/bcel/generic/InstructionHandle;
9 13 9 hs Ljava/util/Set<Lorg/apache/bcel/verifier/structurals/ExceptionHandler;>;
MethodParameters:
Name Flags
mg final
public org.apache.bcel.verifier.structurals.ExceptionHandler[] getExceptionHandlers(org.apache.bcel.generic.InstructionHandle);
descriptor: (Lorg/apache/bcel/generic/InstructionHandle;)[Lorg/apache/bcel/verifier/structurals/ExceptionHandler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 // org.apache.bcel.verifier.structurals.ExceptionHandlers this
start local 1 // org.apache.bcel.generic.InstructionHandle ih
0: .line 66
aload 0 /* this */
getfield org.apache.bcel.verifier.structurals.ExceptionHandlers.exceptionHandlers:Ljava/util/Map;
aload 1 /* ih */
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 2 /* hsSet */
start local 2 // java.util.Set hsSet
1: .line 67
aload 2 /* hsSet */
ifnonnull 3
2: .line 68
iconst_0
anewarray org.apache.bcel.verifier.structurals.ExceptionHandler
areturn
3: .line 70
StackMap locals: java.util.Set
StackMap stack:
aload 2 /* hsSet */
aload 2 /* hsSet */
invokeinterface java.util.Set.size:()I
anewarray org.apache.bcel.verifier.structurals.ExceptionHandler
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.apache.bcel.verifier.structurals.ExceptionHandler[]
areturn
end local 2 // java.util.Set hsSet
end local 1 // org.apache.bcel.generic.InstructionHandle ih
end local 0 // org.apache.bcel.verifier.structurals.ExceptionHandlers this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/bcel/verifier/structurals/ExceptionHandlers;
0 4 1 ih Lorg/apache/bcel/generic/InstructionHandle;
1 4 2 hsSet Ljava/util/Set<Lorg/apache/bcel/verifier/structurals/ExceptionHandler;>;
MethodParameters:
Name Flags
ih final
}
SourceFile: "ExceptionHandlers.java"