public class com.sun.tools.jdi.JNITypeParser
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.jdi.JNITypeParser
super_class: java.lang.Object
{
static final char SIGNATURE_ENDCLASS;
descriptor: C
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 59
static final char SIGNATURE_FUNC;
descriptor: C
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 40
static final char SIGNATURE_ENDFUNC;
descriptor: C
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 41
private java.lang.String signature;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.util.List<java.lang.String> typeNameList;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
private java.util.List<java.lang.String> signatureList;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
private int currentIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/sun/tools/jdi/JNITypeParser;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.sun.tools.jdi.JNITypeParser.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/JNITypeParser;
0 3 1 signature Ljava/lang/String;
MethodParameters:
Name Flags
signature
static java.lang.String typeNameToSignature(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 0
bipush 91
invokevirtual java.lang.String.indexOf:(I)I
istore 2
start local 2 2: iload 2
istore 3
start local 3 3: goto 6
4: StackMap locals: java.lang.StringBuilder int int
StackMap stack:
aload 1
bipush 91
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: aload 0
bipush 91
iload 3
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 3
6: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpne 4
7: iload 2
iconst_m1
if_icmpeq 9
8: aload 0
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
9: StackMap locals:
StackMap stack:
aload 0
ldc "boolean"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
10: aload 1
bipush 90
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: goto 42
StackMap locals:
StackMap stack:
12: aload 0
ldc "byte"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 15
13: aload 1
bipush 66
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
14: goto 42
StackMap locals:
StackMap stack:
15: aload 0
ldc "char"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
16: aload 1
bipush 67
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
17: goto 42
StackMap locals:
StackMap stack:
18: aload 0
ldc "short"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 21
19: aload 1
bipush 83
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
20: goto 42
StackMap locals:
StackMap stack:
21: aload 0
ldc "int"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
22: aload 1
bipush 73
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
23: goto 42
StackMap locals:
StackMap stack:
24: aload 0
ldc "long"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 27
25: aload 1
bipush 74
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
26: goto 42
StackMap locals:
StackMap stack:
27: aload 0
ldc "float"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 30
28: aload 1
bipush 70
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
29: goto 42
StackMap locals:
StackMap stack:
30: aload 0
ldc "double"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 33
31: aload 1
bipush 68
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
32: goto 42
33: StackMap locals:
StackMap stack:
aload 1
bipush 76
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
34: aload 0
ldc "/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 3
35: iload 3
ifge 38
36: aload 1
aload 0
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
37: goto 41
38: StackMap locals:
StackMap stack:
aload 1
aload 0
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
39: aload 1
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
40: aload 1
aload 0
iload 3
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
41: StackMap locals:
StackMap stack:
aload 1
bipush 59
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
42: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 43 0 typeName Ljava/lang/String;
1 43 1 sb Ljava/lang/StringBuilder;
2 43 2 firstIndex I
3 43 3 index I
MethodParameters:
Name Flags
typeName
java.lang.String typeName();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.typeNameList:()Ljava/util/List;
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.typeNameList:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/JNITypeParser;
java.util.List<java.lang.String> argumentTypeNames();
descriptor: ()Ljava/util/List;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.typeNameList:()Ljava/util/List;
iconst_0
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.typeNameList:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.subList:(II)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/JNITypeParser;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
java.lang.String signature();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signatureList:()Ljava/util/List;
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signatureList:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/JNITypeParser;
java.util.List<java.lang.String> argumentSignatures();
descriptor: ()Ljava/util/List;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signatureList:()Ljava/util/List;
iconst_0
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signatureList:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.subList:(II)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/JNITypeParser;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
int dimensionCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signature:()Ljava/lang/String;
astore 2
start local 2 2: goto 4
3: StackMap locals: int java.lang.String
StackMap stack:
iinc 1 1
4: StackMap locals:
StackMap stack:
aload 2
iload 1
invokevirtual java.lang.String.charAt:(I)C
bipush 91
if_icmpeq 3
5: iload 1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/jdi/JNITypeParser;
1 6 1 count I
2 6 2 signature Ljava/lang/String;
byte jdwpTag();
descriptor: ()B
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signature:()Ljava/lang/String;
iconst_0
invokevirtual java.lang.String.charAt:(I)C
i2b
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/JNITypeParser;
java.lang.String componentSignature(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.sun.tools.jdi.JNITypeParser.$assertionsDisabled:Z
ifne 1
iload 1
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.dimensionCount:()I
if_icmple 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.signature:()Ljava/lang/String;
iload 1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/JNITypeParser;
0 2 1 level I
MethodParameters:
Name Flags
level
java.lang.String componentSignature();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.sun.tools.jdi.JNITypeParser.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.isArray:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.tools.jdi.JNITypeParser.componentSignature:(I)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/JNITypeParser;
boolean isArray();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.jdwpTag:()B
bipush 91
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/JNITypeParser;
boolean isVoid();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.jdwpTag:()B
bipush 86
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/JNITypeParser;
boolean isBoolean();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.jdwpTag:()B
bipush 90
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/JNITypeParser;
boolean isReference();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.jdwpTag:()B
istore 1
start local 1 1: iload 1
bipush 91
if_icmpeq 4
2: iload 1
bipush 76
if_icmpeq 4
3: iconst_0
ireturn
StackMap locals: int
StackMap stack:
4: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdi/JNITypeParser;
1 5 1 tag B
boolean isPrimitive();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.jdwpTag:()B
lookupswitch { // 8
66: 1
67: 1
68: 1
70: 1
73: 1
74: 1
83: 1
90: 1
default: 2
}
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/JNITypeParser;
static java.lang.String convertSignatureToClassname(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: getstatic com.sun.tools.jdi.JNITypeParser.$assertionsDisabled:Z
ifne 2
aload 0
ldc "L"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 1
aload 0
ldc ";"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 1
start local 1 3: aload 1
ldc "."
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 2
start local 2 4: iload 2
ifge 6
5: aload 1
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
areturn
6: StackMap locals: java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
aload 1
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
7: ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
iload 2
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 classSignature Ljava/lang/String;
3 9 1 name Ljava/lang/String;
4 9 2 index I
MethodParameters:
Name Flags
classSignature
private synchronized java.util.List<java.lang.String> signatureList();
descriptor: ()Ljava/util/List;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signatureList:Ljava/util/List;
ifnonnull 11
1: aload 0
new java.util.ArrayList
dup
bipush 10
invokespecial java.util.ArrayList.<init>:(I)V
putfield com.sun.tools.jdi.JNITypeParser.signatureList:Ljava/util/List;
2: aload 0
iconst_0
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
3: goto 6
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextSignature:()Ljava/lang/String;
astore 1
start local 1 5: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signatureList:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 1 6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmplt 4
7: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signatureList:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifne 11
8: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid JNI signature '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.signatureList:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/jdi/JNITypeParser;
5 6 1 elem Ljava/lang/String;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
private synchronized java.util.List<java.lang.String> typeNameList();
descriptor: ()Ljava/util/List;
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.JNITypeParser.typeNameList:Ljava/util/List;
ifnonnull 11
1: aload 0
new java.util.ArrayList
dup
bipush 10
invokespecial java.util.ArrayList.<init>:(I)V
putfield com.sun.tools.jdi.JNITypeParser.typeNameList:Ljava/util/List;
2: aload 0
iconst_0
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
3: goto 6
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextTypeName:()Ljava/lang/String;
astore 1
start local 1 5: aload 0
getfield com.sun.tools.jdi.JNITypeParser.typeNameList:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 1 6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmplt 4
7: aload 0
getfield com.sun.tools.jdi.JNITypeParser.typeNameList:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifne 11
8: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid JNI signature '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.typeNameList:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/jdi/JNITypeParser;
5 6 1 elem Ljava/lang/String;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
private java.lang.String nextSignature();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
aload 0
dup
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
invokevirtual java.lang.String.charAt:(I)C
istore 1
start local 1 1: iload 1
lookupswitch { // 13
40: 12
41: 12
66: 11
67: 11
68: 11
70: 11
73: 11
74: 11
76: 3
83: 11
86: 11
90: 11
91: 2
default: 13
}
2: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
iload 1
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextSignature:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
bipush 59
4: aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
5: invokevirtual java.lang.String.indexOf:(II)I
istore 2
start local 2 6: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
iconst_1
isub
7: iload 2
iconst_1
iadd
8: invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
start local 3 9: aload 0
iload 2
iconst_1
iadd
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
10: aload 3
areturn
end local 3 end local 2 11: StackMap locals:
StackMap stack:
iload 1
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
areturn
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextSignature:()Ljava/lang/String;
areturn
13: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
14: new java.lang.StringBuilder
dup
ldc "Invalid JNI signature character '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/tools/jdi/JNITypeParser;
1 16 1 key C
6 11 2 endClass I
9 11 3 retVal Ljava/lang/String;
private java.lang.String nextTypeName();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
aload 0
dup
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
dup_x1
iconst_1
iadd
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
invokevirtual java.lang.String.charAt:(I)C
istore 1
start local 1 1: iload 1
lookupswitch { // 13
40: 27
41: 27
66: 3
67: 4
68: 21
70: 20
73: 22
74: 23
76: 5
83: 24
86: 25
90: 26
91: 2
default: 28
}
2: StackMap locals: int
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextTypeName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "[]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
3: StackMap locals:
StackMap stack:
ldc "byte"
areturn
4: StackMap locals:
StackMap stack:
ldc "char"
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
bipush 59
6: aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
7: invokevirtual java.lang.String.indexOf:(II)I
istore 2
start local 2 8: aload 0
getfield com.sun.tools.jdi.JNITypeParser.signature:Ljava/lang/String;
aload 0
getfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
9: iload 2
10: invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
start local 3 11: aload 3
ldc "."
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 4
start local 4 12: iload 4
ifge 15
13: aload 3
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 3
14: goto 18
15: StackMap locals: int java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
aload 3
iconst_0
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
16: ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
iload 4
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
18: StackMap locals:
StackMap stack:
aload 0
iload 2
iconst_1
iadd
putfield com.sun.tools.jdi.JNITypeParser.currentIndex:I
19: aload 3
areturn
end local 4 end local 3 end local 2 20: StackMap locals:
StackMap stack:
ldc "float"
areturn
21: StackMap locals:
StackMap stack:
ldc "double"
areturn
22: StackMap locals:
StackMap stack:
ldc "int"
areturn
23: StackMap locals:
StackMap stack:
ldc "long"
areturn
24: StackMap locals:
StackMap stack:
ldc "short"
areturn
25: StackMap locals:
StackMap stack:
ldc "void"
areturn
26: StackMap locals:
StackMap stack:
ldc "boolean"
areturn
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.JNITypeParser.nextTypeName:()Ljava/lang/String;
areturn
28: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
29: new java.lang.StringBuilder
dup
ldc "Invalid JNI signature character '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
30: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lcom/sun/tools/jdi/JNITypeParser;
1 31 1 key C
8 20 2 endClass I
11 20 3 retVal Ljava/lang/String;
12 20 4 index I
}
SourceFile: "JNITypeParser.java"