public class javassist.runtime.Desc
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: javassist.runtime.Desc
super_class: java.lang.Object
{
public static boolean useContextClassLoader;
descriptor: Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
private static final java.lang.ThreadLocal<java.lang.Boolean> USE_CONTEXT_CLASS_LOADER_LOCALLY;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/lang/Boolean;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: iconst_0
putstatic javassist.runtime.Desc.useContextClassLoader:Z
1: new javassist.runtime.Desc$1
dup
invokespecial javassist.runtime.Desc$1.<init>:()V
putstatic javassist.runtime.Desc.USE_CONTEXT_CLASS_LOADER_LOCALLY:Ljava/lang/ThreadLocal;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavassist/runtime/Desc;
public static void setUseContextClassLoaderLocally();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic javassist.runtime.Desc.USE_CONTEXT_CLASS_LOADER_LOCALLY:Ljava/lang/ThreadLocal;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
1: return
LocalVariableTable:
Start End Slot Name Signature
public static void resetUseContextClassLoaderLocally();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic javassist.runtime.Desc.USE_CONTEXT_CLASS_LOADER_LOCALLY:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
1: return
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.Class<?> getClassObject(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic javassist.runtime.Desc.useContextClassLoader:Z
ifne 1
getstatic javassist.runtime.Desc.USE_CONTEXT_CLASS_LOADER_LOCALLY:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 name Ljava/lang/String;
Exceptions:
throws java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
name
public static java.lang.Class<?> getClazz(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokestatic javassist.runtime.Desc.getClassObject:(Ljava/lang/String;)Ljava/lang/Class;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
astore 1
start local 1 3: new java.lang.RuntimeException
dup
4: new java.lang.StringBuilder
dup
ldc "$class: internal error, could not find class '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc "' (Desc.useContextClassLoader: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: getstatic javassist.runtime.Desc.useContextClassLoader:Z
invokestatic java.lang.Boolean.toString:(Z)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;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: aload 1
9: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 name Ljava/lang/String;
3 10 1 e Ljava/lang/ClassNotFoundException;
Exception table:
from to target type
0 1 2 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
name
public static java.lang.Class<?>[] getParams(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 40
if_icmpeq 2
1: new java.lang.RuntimeException
dup
ldc "$sig: internal error"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
iconst_0
invokestatic javassist.runtime.Desc.getType:(Ljava/lang/String;III)[Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 desc Ljava/lang/String;
Signature: (Ljava/lang/String;)[Ljava/lang/Class<*>;
MethodParameters:
Name Flags
desc
public static java.lang.Class<?> getType(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual java.lang.String.length:()I
iconst_0
iconst_0
invokestatic javassist.runtime.Desc.getType:(Ljava/lang/String;III)[Ljava/lang/Class;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
arraylength
iconst_1
if_icmpeq 3
2: StackMap locals: java.lang.Class[]
StackMap stack:
new java.lang.RuntimeException
dup
ldc "$type: internal error"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 1
iconst_0
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 desc Ljava/lang/String;
1 4 1 result [Ljava/lang/Class;
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
desc
private static java.lang.Class<?>[] getType(java.lang.String, int, int, int);
descriptor: (Ljava/lang/String;III)[Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iload 1
if_icmplt 2
1: iload 3
anewarray java.lang.Class
areturn
2: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 3: iload 5
tableswitch { // 66 - 91
66: 8
67: 6
68: 18
69: 23
70: 16
71: 23
72: 23
73: 12
74: 14
75: 23
76: 22
77: 23
78: 23
79: 23
80: 23
81: 23
82: 23
83: 10
84: 23
85: 23
86: 20
87: 23
88: 23
89: 23
90: 4
91: 22
default: 23
}
4: StackMap locals: java.lang.String int int int top int
StackMap stack:
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
astore 4
start local 4 5: goto 24
end local 4 6: StackMap locals:
StackMap stack:
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
astore 4
start local 4 7: goto 24
end local 4 8: StackMap locals:
StackMap stack:
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
astore 4
start local 4 9: goto 24
end local 4 10: StackMap locals:
StackMap stack:
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
astore 4
start local 4 11: goto 24
end local 4 12: StackMap locals:
StackMap stack:
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
astore 4
start local 4 13: goto 24
end local 4 14: StackMap locals:
StackMap stack:
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
astore 4
start local 4 15: goto 24
end local 4 16: StackMap locals:
StackMap stack:
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
astore 4
start local 4 17: goto 24
end local 4 18: StackMap locals:
StackMap stack:
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
astore 4
start local 4 19: goto 24
end local 4 20: StackMap locals:
StackMap stack:
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
astore 4
start local 4 21: goto 24
end local 4 22: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
iload 3
invokestatic javassist.runtime.Desc.getClassType:(Ljava/lang/String;III)[Ljava/lang/Class;
areturn
23: StackMap locals:
StackMap stack:
iload 3
anewarray java.lang.Class
areturn
start local 4 24: StackMap locals: java.lang.String int int int java.lang.Class int
StackMap stack:
aload 0
iload 1
iload 2
iconst_1
iadd
iload 3
iconst_1
iadd
invokestatic javassist.runtime.Desc.getType:(Ljava/lang/String;III)[Ljava/lang/Class;
astore 6
start local 6 25: aload 6
iload 3
aload 4
aastore
26: aload 6
areturn
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 27 0 desc Ljava/lang/String;
0 27 1 descLen I
0 27 2 start I
0 27 3 num I
5 6 4 clazz Ljava/lang/Class<*>;
7 8 4 clazz Ljava/lang/Class<*>;
9 10 4 clazz Ljava/lang/Class<*>;
11 12 4 clazz Ljava/lang/Class<*>;
13 14 4 clazz Ljava/lang/Class<*>;
15 16 4 clazz Ljava/lang/Class<*>;
17 18 4 clazz Ljava/lang/Class<*>;
19 20 4 clazz Ljava/lang/Class<*>;
21 22 4 clazz Ljava/lang/Class<*>;
24 27 4 clazz Ljava/lang/Class<*>;
3 27 5 c C
25 27 6 result [Ljava/lang/Class;
Signature: (Ljava/lang/String;III)[Ljava/lang/Class<*>;
MethodParameters:
Name Flags
desc
descLen
start
num
private static java.lang.Class<?>[] getClassType(java.lang.String, int, int, int);
descriptor: (Ljava/lang/String;III)[Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
istore 4
start local 4 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 4 1
3: StackMap locals:
StackMap stack:
aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 91
if_icmpeq 2
4: aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
bipush 76
if_icmpne 8
5: aload 0
bipush 59
iload 4
invokevirtual java.lang.String.indexOf:(II)I
istore 4
6: iload 4
ifge 8
7: new java.lang.IndexOutOfBoundsException
dup
ldc "bad descriptor"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
bipush 76
if_icmpne 11
9: aload 0
iload 2
iconst_1
iadd
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
start local 5 10: goto 12
end local 5 11: StackMap locals:
StackMap stack:
aload 0
iload 2
iload 4
iconst_1
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
start local 5 12: StackMap locals: java.lang.String
StackMap stack:
aload 0
iload 1
iload 4
iconst_1
iadd
iload 3
iconst_1
iadd
invokestatic javassist.runtime.Desc.getType:(Ljava/lang/String;III)[Ljava/lang/Class;
astore 6
start local 6 13: aload 6
iload 3
aload 5
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokestatic javassist.runtime.Desc.getClassObject:(Ljava/lang/String;)Ljava/lang/Class;
aastore
14: goto 17
15: StackMap locals: java.lang.String int int int int java.lang.String java.lang.Class[]
StackMap stack: java.lang.ClassNotFoundException
astore 7
start local 7 16: new java.lang.RuntimeException
dup
aload 7
invokevirtual java.lang.ClassNotFoundException.getMessage:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 7 17: StackMap locals:
StackMap stack:
aload 6
areturn
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 18 0 desc Ljava/lang/String;
0 18 1 descLen I
0 18 2 start I
0 18 3 num I
1 18 4 end I
10 11 5 cname Ljava/lang/String;
12 18 5 cname Ljava/lang/String;
13 18 6 result [Ljava/lang/Class;
16 17 7 e Ljava/lang/ClassNotFoundException;
Exception table:
from to target type
13 14 15 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;III)[Ljava/lang/Class<*>;
MethodParameters:
Name Flags
desc
descLen
start
num
}
SourceFile: "Desc.java"
NestMembers:
javassist.runtime.Desc$1
InnerClasses:
javassist.runtime.Desc$1