class java.lang.invoke.TypeConvertingMethodAdapter extends jdk.internal.org.objectweb.asm.MethodVisitor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.lang.invoke.TypeConvertingMethodAdapter
super_class: jdk.internal.org.objectweb.asm.MethodVisitor
{
private static final int NUM_WRAPPERS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final java.lang.String NAME_OBJECT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "java/lang/Object"
private static final java.lang.String WRAPPER_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Ljava/lang/"
private static final java.lang.String NAME_BOX_METHOD;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "valueOf"
private static final int[][] wideningOpcodes;
descriptor: [[I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final sun.invoke.util.Wrapper[] FROM_WRAPPER_NAME;
descriptor: [Lsun/invoke/util/Wrapper;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final sun.invoke.util.Wrapper[] FROM_TYPE_SORT;
descriptor: [Lsun/invoke/util/Wrapper;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
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=6, locals=5, args_size=0
0: ldc Ljava/lang/invoke/TypeConvertingMethodAdapter;
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 java.lang.invoke.TypeConvertingMethodAdapter.$assertionsDisabled:Z
3: bipush 10
bipush 10
multianewarray [[I 2
putstatic java.lang.invoke.TypeConvertingMethodAdapter.wideningOpcodes:[[I
4: bipush 16
anewarray sun.invoke.util.Wrapper
putstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_WRAPPER_NAME:[Lsun/invoke/util/Wrapper;
5: bipush 12
anewarray sun.invoke.util.Wrapper
putstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
6: invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 3
arraylength
istore 2
iconst_0
istore 1
goto 13
StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
7: aload 3
iload 1
aaload
astore 0
start local 0 8: aload 0
invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
bipush 76
if_icmpeq 12
9: aload 0
invokevirtual sun.invoke.util.Wrapper.wrapperSimpleName:()Ljava/lang/String;
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.hashWrapperName:(Ljava/lang/String;)I
istore 4
start local 4 10: getstatic java.lang.invoke.TypeConvertingMethodAdapter.$assertionsDisabled:Z
ifne 11
getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_WRAPPER_NAME:[Lsun/invoke/util/Wrapper;
iload 4
aaload
ifnull 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] int
StackMap stack:
getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_WRAPPER_NAME:[Lsun/invoke/util/Wrapper;
iload 4
aload 0
aastore
end local 4 end local 0 12: StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
13: iload 1
iload 2
if_icmplt 7
14: getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
sipush 133
iconst_4
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_1
getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_2
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_3
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
15: getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
sipush 140
iconst_1
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
16: getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
sipush 134
iconst_4
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_1
getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_2
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_3
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
17: getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
sipush 137
iconst_1
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
18: getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
sipush 135
iconst_4
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_1
getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_2
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_3
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
19: getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
sipush 141
iconst_1
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
20: getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
sipush 138
iconst_1
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
aastore
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.initWidening:(Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
21: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
iconst_3
getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
aastore
22: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
iconst_4
getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
aastore
23: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
iconst_5
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
aastore
24: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
bipush 7
getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
aastore
25: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
iconst_2
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aastore
26: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
bipush 6
getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
aastore
27: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
bipush 8
getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
aastore
28: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
iconst_1
getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
aastore
29: return
LocalVariableTable:
Start End Slot Name Signature
8 12 0 w Lsun/invoke/util/Wrapper;
10 12 4 wi I
void <init>(jdk.internal.org.objectweb.asm.MethodVisitor);
descriptor: (Ljdk/internal/org/objectweb/asm/MethodVisitor;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ldc 327680
aload 1
invokespecial jdk.internal.org.objectweb.asm.MethodVisitor.<init>:(ILjdk/internal/org/objectweb/asm/MethodVisitor;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 2 1 mv Ljdk/internal/org/objectweb/asm/MethodVisitor;
MethodParameters:
Name Flags
mv
private static void initWidening(sun.invoke.util.Wrapper, int, sun.invoke.util.Wrapper[]);
descriptor: (Lsun/invoke/util/Wrapper;I[Lsun/invoke/util/Wrapper;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 4
StackMap locals: sun.invoke.util.Wrapper int sun.invoke.util.Wrapper[] top int int sun.invoke.util.Wrapper[]
StackMap stack:
1: aload 6
iload 4
aaload
astore 3
start local 3 2: getstatic java.lang.invoke.TypeConvertingMethodAdapter.wideningOpcodes:[[I
aload 3
invokevirtual sun.invoke.util.Wrapper.ordinal:()I
aaload
aload 0
invokevirtual sun.invoke.util.Wrapper.ordinal:()I
iload 1
iastore
end local 3 3: iinc 4 1
StackMap locals:
StackMap stack:
4: iload 4
iload 5
if_icmplt 1
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 to Lsun/invoke/util/Wrapper;
0 6 1 opcode I
0 6 2 from [Lsun/invoke/util/Wrapper;
2 3 3 f Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
to
opcode
from
private static int hashWrapperName(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
iconst_3
if_icmpge 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_3
aload 0
iconst_1
invokevirtual java.lang.String.charAt:(I)C
imul
aload 0
iconst_2
invokevirtual java.lang.String.charAt:(I)C
iadd
bipush 16
irem
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 xn Ljava/lang/String;
MethodParameters:
Name Flags
xn
private sun.invoke.util.Wrapper wrapperOrNullFromDescriptor(java.lang.String);
descriptor: (Ljava/lang/String;)Lsun/invoke/util/Wrapper;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "Ljava/lang/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "Ljava/lang/"
invokevirtual java.lang.String.length:()I
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 2
start local 2 3: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_WRAPPER_NAME:[Lsun/invoke/util/Wrapper;
aload 2
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.hashWrapperName:(Ljava/lang/String;)I
aaload
astore 3
start local 3 4: aload 3
ifnull 5
aload 3
invokevirtual sun.invoke.util.Wrapper.wrapperSimpleName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: StackMap locals: java.lang.String sun.invoke.util.Wrapper
StackMap stack:
aload 3
areturn
6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 7 1 desc Ljava/lang/String;
3 7 2 cname Ljava/lang/String;
4 7 3 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
desc
private static java.lang.String wrapperName(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "java/lang/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual sun.invoke.util.Wrapper.wrapperSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
w
private static java.lang.String unboxMethod(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokevirtual sun.invoke.util.Wrapper.primitiveSimpleName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Value"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
w
private static java.lang.String boxingDescriptor(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc ")L"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)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;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
w
private static java.lang.String unboxingDescriptor(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "()"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
w
void boxIfTypePrimitive(jdk.internal.org.objectweb.asm.Type);
descriptor: (Ljdk/internal/org/objectweb/asm/Type;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic java.lang.invoke.TypeConvertingMethodAdapter.FROM_TYPE_SORT:[Lsun/invoke/util/Wrapper;
aload 1
invokevirtual jdk.internal.org.objectweb.asm.Type.getSort:()I
aaload
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 0
aload 2
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.box:(Lsun/invoke/util/Wrapper;)V
3: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 4 1 t Ljdk/internal/org/objectweb/asm/Type;
1 4 2 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
t
void widen(sun.invoke.util.Wrapper, sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpeq 4
1: getstatic java.lang.invoke.TypeConvertingMethodAdapter.wideningOpcodes:[[I
aload 1
invokevirtual sun.invoke.util.Wrapper.ordinal:()I
aaload
aload 2
invokevirtual sun.invoke.util.Wrapper.ordinal:()I
iaload
istore 3
start local 3 2: iload 3
ifeq 4
3: aload 0
iload 3
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.visitInsn:(I)V
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 5 1 ws Lsun/invoke/util/Wrapper;
0 5 2 wt Lsun/invoke/util/Wrapper;
2 4 3 opcode I
MethodParameters:
Name Flags
ws
wt
void box(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)V
flags: (0x0000)
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
sipush 184
1: aload 1
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
2: ldc "valueOf"
3: aload 1
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.boxingDescriptor:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
iconst_0
4: invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 6 1 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
w
void unbox(java.lang.String, sun.invoke.util.Wrapper);
descriptor: (Ljava/lang/String;Lsun/invoke/util/Wrapper;)V
flags: (0x0000)
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
sipush 182
1: aload 1
2: aload 2
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.unboxMethod:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
3: aload 2
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.unboxingDescriptor:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
iconst_0
4: invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 6 1 sname Ljava/lang/String;
0 6 2 wt Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
sname
wt
private java.lang.String descriptorToName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
istore 2
start local 2 1: aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 76
if_icmpne 3
aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
bipush 59
if_icmpne 3
2: aload 1
iconst_1
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
areturn
3: StackMap locals: int
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 4 1 desc Ljava/lang/String;
1 4 2 last I
MethodParameters:
Name Flags
desc
void cast(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.descriptorToName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 0
aload 2
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.descriptorToName:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 4
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 4
aload 4
ldc "java/lang/Object"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 4
3: aload 0
sipush 192
aload 4
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.visitTypeInsn:(ILjava/lang/String;)V
4: StackMap locals: java.lang.String java.lang.String
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 5 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 5 1 ds Ljava/lang/String;
0 5 2 dt Ljava/lang/String;
1 5 3 ns Ljava/lang/String;
2 5 4 nt Ljava/lang/String;
MethodParameters:
Name Flags
ds
dt
private sun.invoke.util.Wrapper toWrapper(java.lang.String);
descriptor: (Ljava/lang/String;)Lsun/invoke/util/Wrapper;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 2
start local 2 1: iload 2
bipush 91
if_icmpeq 2
iload 2
bipush 40
if_icmpne 3
2: StackMap locals: int
StackMap stack:
bipush 76
istore 2
3: StackMap locals:
StackMap stack:
iload 2
invokestatic sun.invoke.util.Wrapper.forBasicType:(C)Lsun/invoke/util/Wrapper;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 4 1 desc Ljava/lang/String;
1 4 2 first C
MethodParameters:
Name Flags
desc
void convertType(java.lang.Class<?>, java.lang.Class<?>, java.lang.Class<?>);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)V
flags: (0x0000)
Code:
stack=3, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
aload 1
aload 3
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpeq 3
aload 2
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpne 4
3: StackMap locals:
StackMap stack:
return
4: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 18
5: aload 1
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
astore 4
start local 4 6: aload 2
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 9
7: aload 0
aload 4
aload 2
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.widen:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
8: goto 43
9: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
aload 2
invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/Class;)Ljava/lang/String;
astore 5
start local 5 10: aload 0
aload 5
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.wrapperOrNullFromDescriptor:(Ljava/lang/String;)Lsun/invoke/util/Wrapper;
astore 6
start local 6 11: aload 6
ifnull 15
12: aload 0
aload 4
aload 6
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.widen:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
13: aload 0
aload 6
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.box:(Lsun/invoke/util/Wrapper;)V
14: goto 43
15: StackMap locals: java.lang.String sun.invoke.util.Wrapper
StackMap stack:
aload 0
aload 4
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.box:(Lsun/invoke/util/Wrapper;)V
16: aload 0
aload 4
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
aload 5
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.cast:(Ljava/lang/String;Ljava/lang/String;)V
end local 6 end local 5 end local 4 17: goto 43
18: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/Class;)Ljava/lang/String;
astore 4
start local 4 19: aload 3
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 22
20: aload 4
astore 5
start local 5 21: goto 24
end local 5 22: StackMap locals: java.lang.String
StackMap stack:
aload 3
invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/Class;)Ljava/lang/String;
astore 5
start local 5 23: aload 0
aload 4
aload 5
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.cast:(Ljava/lang/String;Ljava/lang/String;)V
24: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokestatic sun.invoke.util.BytecodeDescriptor.unparse:(Ljava/lang/Class;)Ljava/lang/String;
astore 6
start local 6 25: aload 2
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 42
26: aload 0
aload 6
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.toWrapper:(Ljava/lang/String;)Lsun/invoke/util/Wrapper;
astore 7
start local 7 27: aload 0
aload 5
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.wrapperOrNullFromDescriptor:(Ljava/lang/String;)Lsun/invoke/util/Wrapper;
astore 8
start local 8 28: aload 8
ifnull 35
29: aload 8
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifne 30
aload 8
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifeq 32
30: StackMap locals: java.lang.String sun.invoke.util.Wrapper sun.invoke.util.Wrapper
StackMap stack:
aload 0
aload 8
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
aload 7
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.unbox:(Ljava/lang/String;Lsun/invoke/util/Wrapper;)V
31: goto 43
32: StackMap locals:
StackMap stack:
aload 0
aload 8
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
aload 8
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.unbox:(Ljava/lang/String;Lsun/invoke/util/Wrapper;)V
33: aload 0
aload 8
aload 7
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.widen:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
34: goto 43
35: StackMap locals:
StackMap stack:
aload 7
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifne 36
aload 7
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifeq 38
36: StackMap locals:
StackMap stack:
ldc "java/lang/Number"
astore 9
start local 9 37: goto 39
end local 9 38: StackMap locals:
StackMap stack:
aload 7
invokestatic java.lang.invoke.TypeConvertingMethodAdapter.wrapperName:(Lsun/invoke/util/Wrapper;)Ljava/lang/String;
astore 9
start local 9 39: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 5
aload 9
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.cast:(Ljava/lang/String;Ljava/lang/String;)V
40: aload 0
aload 9
aload 7
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.unbox:(Ljava/lang/String;Lsun/invoke/util/Wrapper;)V
end local 9 end local 8 end local 7 41: goto 43
42: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 6
invokevirtual java.lang.invoke.TypeConvertingMethodAdapter.cast:(Ljava/lang/String;Ljava/lang/String;)V
end local 6 end local 5 end local 4 43: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 44 1 arg Ljava/lang/Class<*>;
0 44 2 target Ljava/lang/Class<*>;
0 44 3 functional Ljava/lang/Class<*>;
6 17 4 wArg Lsun/invoke/util/Wrapper;
10 17 5 dTarget Ljava/lang/String;
11 17 6 wPrimTarget Lsun/invoke/util/Wrapper;
19 43 4 dArg Ljava/lang/String;
21 22 5 dSrc Ljava/lang/String;
23 43 5 dSrc Ljava/lang/String;
25 43 6 dTarget Ljava/lang/String;
27 41 7 wTarget Lsun/invoke/util/Wrapper;
28 41 8 wps Lsun/invoke/util/Wrapper;
37 38 9 intermediate Ljava/lang/String;
39 41 9 intermediate Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
arg
target
functional
void iconst(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_m1
if_icmplt 3
iload 1
iconst_5
if_icmpgt 3
1: aload 0
getfield java.lang.invoke.TypeConvertingMethodAdapter.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
iconst_3
iload 1
iadd
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
2: goto 10
StackMap locals:
StackMap stack:
3: iload 1
bipush -128
if_icmplt 6
iload 1
bipush 127
if_icmpgt 6
4: aload 0
getfield java.lang.invoke.TypeConvertingMethodAdapter.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 16
iload 1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
5: goto 10
StackMap locals:
StackMap stack:
6: iload 1
sipush -32768
if_icmplt 9
iload 1
sipush 32767
if_icmpgt 9
7: aload 0
getfield java.lang.invoke.TypeConvertingMethodAdapter.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 17
iload 1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
8: goto 10
9: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.invoke.TypeConvertingMethodAdapter.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/lang/invoke/TypeConvertingMethodAdapter;
0 11 1 cst I
MethodParameters:
Name Flags
cst final
}
SourceFile: "TypeConvertingMethodAdapter.java"