public final class sun.invoke.util.Wrapper extends java.lang.Enum<sun.invoke.util.Wrapper>
minor version: 0
major version: 59
flags: flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
this_class: sun.invoke.util.Wrapper
super_class: java.lang.Enum
{
public static final sun.invoke.util.Wrapper BOOLEAN;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper BYTE;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper SHORT;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper CHAR;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper INT;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper LONG;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper FLOAT;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper DOUBLE;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper OBJECT;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
public static final sun.invoke.util.Wrapper VOID;
descriptor: Lsun/invoke/util/Wrapper;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
private final java.lang.Class<?> wrapperType;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private final java.lang.Class<?> primitiveType;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private final char basicTypeChar;
descriptor: C
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Object zero;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Object emptyArray;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int format;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String wrapperSimpleName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String primitiveSimpleName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final sun.invoke.util.Wrapper[] FROM_PRIM;
descriptor: [Lsun/invoke/util/Wrapper;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final sun.invoke.util.Wrapper[] FROM_WRAP;
descriptor: [Lsun/invoke/util/Wrapper;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final sun.invoke.util.Wrapper[] FROM_CHAR;
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
private static final sun.invoke.util.Wrapper[] ENUM$VALUES;
descriptor: [Lsun/invoke/util/Wrapper;
flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=7, args_size=0
0: ldc Lsun/invoke/util/Wrapper;
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 sun.invoke.util.Wrapper.$assertionsDisabled:Z
3: new sun.invoke.util.Wrapper
dup
ldc "BOOLEAN"
iconst_0
ldc Ljava/lang/Boolean;
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
bipush 90
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_0
newarray 4
iconst_1
invokestatic sun.invoke.util.Wrapper$Format.unsigned:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
4: new sun.invoke.util.Wrapper
dup
ldc "BYTE"
iconst_1
ldc Ljava/lang/Byte;
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
bipush 66
iconst_0
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
iconst_0
newarray 8
bipush 8
invokestatic sun.invoke.util.Wrapper$Format.signed:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
5: new sun.invoke.util.Wrapper
dup
ldc "SHORT"
iconst_2
ldc Ljava/lang/Short;
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
bipush 83
iconst_0
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
iconst_0
newarray 9
bipush 16
invokestatic sun.invoke.util.Wrapper$Format.signed:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
6: new sun.invoke.util.Wrapper
dup
ldc "CHAR"
iconst_3
ldc Ljava/lang/Character;
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
bipush 67
iconst_0
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
iconst_0
newarray 5
bipush 16
invokestatic sun.invoke.util.Wrapper$Format.unsigned:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
7: new sun.invoke.util.Wrapper
dup
ldc "INT"
iconst_4
ldc Ljava/lang/Integer;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
bipush 73
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
newarray 10
bipush 32
invokestatic sun.invoke.util.Wrapper$Format.signed:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
8: new sun.invoke.util.Wrapper
dup
ldc "LONG"
iconst_5
ldc Ljava/lang/Long;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
bipush 74
lconst_0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
iconst_0
newarray 11
bipush 64
invokestatic sun.invoke.util.Wrapper$Format.signed:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
9: new sun.invoke.util.Wrapper
dup
ldc "FLOAT"
bipush 6
ldc Ljava/lang/Float;
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
bipush 70
fconst_0
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
iconst_0
newarray 6
bipush 32
invokestatic sun.invoke.util.Wrapper$Format.floating:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
10: new sun.invoke.util.Wrapper
dup
ldc "DOUBLE"
bipush 7
ldc Ljava/lang/Double;
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
bipush 68
dconst_0
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
iconst_0
newarray 7
bipush 64
invokestatic sun.invoke.util.Wrapper$Format.floating:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
11: new sun.invoke.util.Wrapper
dup
ldc "OBJECT"
bipush 8
ldc Ljava/lang/Object;
ldc Ljava/lang/Object;
bipush 76
aconst_null
iconst_0
anewarray java.lang.Object
iconst_1
invokestatic sun.invoke.util.Wrapper$Format.other:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
12: new sun.invoke.util.Wrapper
dup
ldc "VOID"
bipush 9
ldc Ljava/lang/Void;
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
bipush 86
aconst_null
aconst_null
iconst_0
invokestatic sun.invoke.util.Wrapper$Format.other:(I)I
invokespecial sun.invoke.util.Wrapper.<init>:(Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
putstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
bipush 10
anewarray sun.invoke.util.Wrapper
dup
iconst_0
getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_1
getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_2
getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_3
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_4
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
aastore
dup
iconst_5
getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
aastore
dup
bipush 6
getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
aastore
dup
bipush 7
getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
aastore
dup
bipush 8
getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
aastore
dup
bipush 9
getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
aastore
putstatic sun.invoke.util.Wrapper.ENUM$VALUES:[Lsun/invoke/util/Wrapper;
13: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 14
invokestatic sun.invoke.util.Wrapper.checkConvertibleFrom:()Z
ifne 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
bipush 16
anewarray sun.invoke.util.Wrapper
putstatic sun.invoke.util.Wrapper.FROM_PRIM:[Lsun/invoke/util/Wrapper;
15: bipush 16
anewarray sun.invoke.util.Wrapper
putstatic sun.invoke.util.Wrapper.FROM_WRAP:[Lsun/invoke/util/Wrapper;
16: bipush 16
anewarray sun.invoke.util.Wrapper
putstatic sun.invoke.util.Wrapper.FROM_CHAR:[Lsun/invoke/util/Wrapper;
17: invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 3
arraylength
istore 2
iconst_0
istore 1
goto 29
StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
18: aload 3
iload 1
aaload
astore 0
start local 0 19: aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
invokestatic sun.invoke.util.Wrapper.hashPrim:(Ljava/lang/Class;)I
istore 4
start local 4 20: aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
invokestatic sun.invoke.util.Wrapper.hashWrap:(Ljava/lang/Class;)I
istore 5
start local 5 21: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
invokestatic sun.invoke.util.Wrapper.hashChar:(C)I
istore 6
start local 6 22: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 23
getstatic sun.invoke.util.Wrapper.FROM_PRIM:[Lsun/invoke/util/Wrapper;
iload 4
aaload
ifnull 23
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
23: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] int int int
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 24
getstatic sun.invoke.util.Wrapper.FROM_WRAP:[Lsun/invoke/util/Wrapper;
iload 5
aaload
ifnull 24
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
24: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 25
getstatic sun.invoke.util.Wrapper.FROM_CHAR:[Lsun/invoke/util/Wrapper;
iload 6
aaload
ifnull 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
25: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.FROM_PRIM:[Lsun/invoke/util/Wrapper;
iload 4
aload 0
aastore
26: getstatic sun.invoke.util.Wrapper.FROM_WRAP:[Lsun/invoke/util/Wrapper;
iload 5
aload 0
aastore
27: getstatic sun.invoke.util.Wrapper.FROM_CHAR:[Lsun/invoke/util/Wrapper;
iload 6
aload 0
aastore
end local 6 end local 5 end local 4 end local 0 28: iinc 1 1
StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
29: iload 1
iload 2
if_icmplt 18
30: return
LocalVariableTable:
Start End Slot Name Signature
19 28 0 w Lsun/invoke/util/Wrapper;
20 28 4 pi I
21 28 5 wi I
22 28 6 ci I
private void <init>(java.lang.Class<?>, java.lang.Class<?>, char, , , );
descriptor: (Ljava/lang/String;ILjava/lang/Class;Ljava/lang/Class;CLjava/lang/Object;Ljava/lang/Object;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=9, args_size=9
start local 0 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
aload 1
iload 2
invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
1: aload 0
aload 3
putfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
2: aload 0
aload 4
putfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
3: aload 0
iload 5
putfield sun.invoke.util.Wrapper.basicTypeChar:C
4: aload 0
aload 6
putfield sun.invoke.util.Wrapper.zero:Ljava/lang/Object;
5: aload 0
aload 7
putfield sun.invoke.util.Wrapper.emptyArray:Ljava/lang/Object;
6: aload 0
iload 8
putfield sun.invoke.util.Wrapper.format:I
7: aload 0
aload 3
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
putfield sun.invoke.util.Wrapper.wrapperSimpleName:Ljava/lang/String;
8: aload 0
aload 4
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
putfield sun.invoke.util.Wrapper.primitiveSimpleName:Ljava/lang/String;
9: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/invoke/util/Wrapper;
0 10 3 wtype Ljava/lang/Class<*>;
0 10 4 ptype Ljava/lang/Class<*>;
0 10 5 tchar C
0 10 6 zero Ljava/lang/Object;
0 10 7 emptyArray Ljava/lang/Object;
0 10 8 format I
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;CLjava/lang/Object;Ljava/lang/Object;I)V
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
wtype
ptype
tchar
zero
emptyArray
format
public java.lang.String detailString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
getfield sun.invoke.util.Wrapper.wrapperSimpleName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: iconst_5
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
aastore
dup
iconst_1
aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
aastore
dup
iconst_2
2: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
dup
iconst_3
aload 0
getfield sun.invoke.util.Wrapper.zero:Ljava/lang/Object;
aastore
dup
iconst_4
3: new java.lang.StringBuilder
dup
ldc "0x"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.invoke.util.Wrapper.format:I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
4: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/invoke/util/Wrapper;
public int bitWidth();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
iconst_2
ishr
sipush 1023
iand
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public int stackSlots();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
iconst_0
ishr
iconst_3
iand
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public boolean isSingleWord();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
iconst_1
iand
ifeq 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 Lsun/invoke/util/Wrapper;
public boolean isDoubleWord();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
iconst_2
iand
ifeq 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 Lsun/invoke/util/Wrapper;
public boolean isNumeric();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
bipush -4
iand
ifeq 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 Lsun/invoke/util/Wrapper;
public boolean isIntegral();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.invoke.util.Wrapper.isNumeric:()Z
ifeq 1
aload 0
getfield sun.invoke.util.Wrapper.format:I
sipush 4225
if_icmpge 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 Lsun/invoke/util/Wrapper;
public boolean isSubwordOrInt();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.invoke.util.Wrapper.isIntegral:()Z
ifeq 1
aload 0
invokevirtual sun.invoke.util.Wrapper.isSingleWord:()Z
ifeq 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 Lsun/invoke/util/Wrapper;
public boolean isSigned();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
ifge 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 Lsun/invoke/util/Wrapper;
public boolean isUnsigned();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
iconst_5
if_icmplt 1
aload 0
getfield sun.invoke.util.Wrapper.format:I
sipush 4225
if_icmpge 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 Lsun/invoke/util/Wrapper;
public boolean isFloating();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
sipush 4225
if_icmplt 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 Lsun/invoke/util/Wrapper;
public boolean isOther();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.format:I
bipush -4
iand
ifne 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 Lsun/invoke/util/Wrapper;
public boolean isConvertibleFrom(sun.invoke.util.Wrapper);
descriptor: (Lsun/invoke/util/Wrapper;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.invoke.util.Wrapper.compareTo:(Ljava/lang/Enum;)I
ifge 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.invoke.util.Wrapper.format:I
aload 1
getfield sun.invoke.util.Wrapper.format:I
iand
sipush -4096
iand
ifeq 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 2
start local 2 6: iload 2
ifne 10
7: aload 0
invokevirtual sun.invoke.util.Wrapper.isOther:()Z
ifeq 8
iconst_1
ireturn
8: StackMap locals: int
StackMap stack:
aload 1
getfield sun.invoke.util.Wrapper.format:I
bipush 65
if_icmpne 9
iconst_1
ireturn
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
10: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 11
aload 0
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifne 11
aload 0
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifne 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 12
aload 1
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifne 12
aload 1
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifne 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/invoke/util/Wrapper;
0 13 1 source Lsun/invoke/util/Wrapper;
6 13 2 floatOrSigned Z
MethodParameters:
Name Flags
source
private static boolean checkConvertibleFrom();
descriptor: ()Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=0
0: invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 3
arraylength
istore 2
iconst_0
istore 1
goto 40
StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
1: aload 3
iload 1
aaload
astore 0
start local 0 2: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 3
aload 0
aload 0
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[]
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 4
getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
aload 0
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
if_acmpeq 7
5: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 6
getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
aload 0
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 7
aload 0
getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
if_acmpeq 11
8: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 9
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
aload 0
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 11
10: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 11
aload 0
getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
aload 0
getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
if_acmpeq 15
12: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 13
getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
aload 0
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
aload 0
getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
if_acmpeq 15
aload 0
getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
if_acmpeq 15
14: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 15
aload 0
getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifeq 27
16: invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 26
StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] top int int sun.invoke.util.Wrapper[]
StackMap stack:
17: aload 7
iload 5
aaload
astore 4
start local 4 18: aload 0
aload 4
if_acmpne 19
goto 25
19: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[]
StackMap stack:
aload 4
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifeq 21
20: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 25
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
21: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifeq 25
22: aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.compareTo:(Ljava/lang/Enum;)I
ifge 24
23: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 25
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
24: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 25
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 4 25: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] top int int sun.invoke.util.Wrapper[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
26: iload 5
iload 6
if_icmplt 17
27: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[]
StackMap stack:
aload 0
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifeq 39
28: invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 38
StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] top int int sun.invoke.util.Wrapper[]
StackMap stack:
29: aload 7
iload 5
aaload
astore 4
start local 4 30: aload 0
aload 4
if_acmpne 31
goto 37
31: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[]
StackMap stack:
aload 4
invokevirtual sun.invoke.util.Wrapper.isSigned:()Z
ifeq 33
32: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 37
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 37
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
33: StackMap locals:
StackMap stack:
aload 4
invokevirtual sun.invoke.util.Wrapper.isFloating:()Z
ifeq 37
34: aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.compareTo:(Ljava/lang/Enum;)I
ifge 36
35: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 37
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifeq 37
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
36: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 37
aload 0
aload 4
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 37
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 4 37: StackMap locals: sun.invoke.util.Wrapper int int sun.invoke.util.Wrapper[] top int int sun.invoke.util.Wrapper[]
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
38: iload 5
iload 6
if_icmplt 29
end local 0 39: StackMap locals: top int int sun.invoke.util.Wrapper[]
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
40: iload 1
iload 2
if_icmplt 1
41: iconst_1
ireturn
LocalVariableTable:
Start End Slot Name Signature
2 39 0 w Lsun/invoke/util/Wrapper;
18 25 4 x Lsun/invoke/util/Wrapper;
30 37 4 x Lsun/invoke/util/Wrapper;
public java.lang.Object zero();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.zero:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public <T> T zero(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield sun.invoke.util.Wrapper.zero:Ljava/lang/Object;
aload 1
invokevirtual sun.invoke.util.Wrapper.convert:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
0 1 1 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
type
public static sun.invoke.util.Wrapper forPrimitiveType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokestatic sun.invoke.util.Wrapper.findPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
areturn
2: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 4
3: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "not primitive: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.invoke.util.Wrapper.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 type Ljava/lang/Class<*>;
1 5 1 w Lsun/invoke/util/Wrapper;
Signature: (Ljava/lang/Class<*>;)Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
static sun.invoke.util.Wrapper findPrimitiveType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic sun.invoke.util.Wrapper.FROM_PRIM:[Lsun/invoke/util/Wrapper;
aload 0
invokestatic sun.invoke.util.Wrapper.hashPrim:(Ljava/lang/Class;)I
aaload
astore 1
start local 1 1: aload 1
ifnull 3
aload 1
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
aload 0
if_acmpne 3
2: aload 1
areturn
3: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 type Ljava/lang/Class<*>;
1 4 1 w Lsun/invoke/util/Wrapper;
Signature: (Ljava/lang/Class<*>;)Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
public static sun.invoke.util.Wrapper forWrapperType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: aload 0
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
areturn
2: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 7
StackMap locals: java.lang.Class sun.invoke.util.Wrapper top int int sun.invoke.util.Wrapper[]
StackMap stack:
3: aload 5
iload 3
aaload
astore 2
start local 2 4: aload 2
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
aload 0
if_acmpne 6
5: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
end local 2 6: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
iload 4
if_icmplt 3
8: new java.lang.StringBuilder
dup
ldc "not wrapper: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.invoke.util.Wrapper.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 type Ljava/lang/Class<*>;
1 9 1 w Lsun/invoke/util/Wrapper;
4 6 2 x Lsun/invoke/util/Wrapper;
Signature: (Ljava/lang/Class<*>;)Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
static sun.invoke.util.Wrapper findWrapperType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic sun.invoke.util.Wrapper.FROM_WRAP:[Lsun/invoke/util/Wrapper;
aload 0
invokestatic sun.invoke.util.Wrapper.hashWrap:(Ljava/lang/Class;)I
aaload
astore 1
start local 1 1: aload 1
ifnull 3
aload 1
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
aload 0
if_acmpne 3
2: aload 1
areturn
3: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 type Ljava/lang/Class<*>;
1 4 1 w Lsun/invoke/util/Wrapper;
Signature: (Ljava/lang/Class<*>;)Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
public static sun.invoke.util.Wrapper forBasicType(char);
descriptor: (C)Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: getstatic sun.invoke.util.Wrapper.FROM_CHAR:[Lsun/invoke/util/Wrapper;
iload 0
invokestatic sun.invoke.util.Wrapper.hashChar:(C)I
aaload
astore 1
start local 1 1: aload 1
ifnull 3
aload 1
getfield sun.invoke.util.Wrapper.basicTypeChar:C
iload 0
if_icmpne 3
2: aload 1
areturn
3: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 7
4: StackMap locals: int int sun.invoke.util.Wrapper[]
StackMap stack:
aload 1
getfield sun.invoke.util.Wrapper.basicTypeChar:C
iload 0
if_icmpne 6
5: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
iload 3
if_icmplt 4
8: new java.lang.StringBuilder
dup
ldc "not basic type char: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 0
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.invoke.util.Wrapper.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 type C
1 9 1 w Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
public static sun.invoke.util.Wrapper forBasicType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
1: aload 0
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
areturn
2: StackMap locals:
StackMap stack:
getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Lsun/invoke/util/Wrapper;
MethodParameters:
Name Flags
type
private static int hashPrim(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokevirtual java.lang.String.length:()I
iconst_3
if_icmpge 2
iconst_0
ireturn
2: StackMap locals: java.lang.String
StackMap stack:
aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
aload 1
iconst_2
invokevirtual java.lang.String.charAt:(I)C
iadd
bipush 16
irem
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 x Ljava/lang/Class<*>;
1 3 1 xn Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;)I
MethodParameters:
Name Flags
x
private static int hashWrap(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 1
start local 1 1: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 2
bipush 10
ldc "java.lang."
invokevirtual java.lang.String.length:()I
if_icmpeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokevirtual java.lang.String.length:()I
bipush 13
if_icmpge 3
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_3
aload 1
bipush 11
invokevirtual java.lang.String.charAt:(I)C
imul
aload 1
bipush 12
invokevirtual java.lang.String.charAt:(I)C
iadd
bipush 16
irem
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x Ljava/lang/Class<*>;
1 4 1 xn Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;)I
MethodParameters:
Name Flags
x
private static int hashChar(char);
descriptor: (C)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
iload 0
iconst_1
ishr
iadd
bipush 16
irem
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x C
MethodParameters:
Name Flags
x
public java.lang.Class<?> primitiveType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
Signature: ()Ljava/lang/Class<*>;
public java.lang.Class<?> wrapperType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
Signature: ()Ljava/lang/Class<*>;
public <T> java.lang.Class<T> wrapperType(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
if_acmpne 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
if_acmpeq 5
3: aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
ldc Ljava/lang/Object;
if_acmpeq 5
4: aload 1
invokevirtual java.lang.Class.isInterface:()Z
ifeq 6
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
aload 1
invokestatic sun.invoke.util.Wrapper.forceType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Class;
areturn
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
invokestatic sun.invoke.util.Wrapper.newClassCastException:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/ClassCastException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/invoke/util/Wrapper;
0 7 1 exampleType Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
MethodParameters:
Name Flags
exampleType
private static java.lang.ClassCastException newClassCastException(java.lang.Class<?>, java.lang.Class<?>);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/ClassCastException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.ClassCastException
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " is not compatible with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 actual Ljava/lang/Class<*>;
0 1 1 expected Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;)Ljava/lang/ClassCastException;
MethodParameters:
Name Flags
actual
expected
public static <T> java.lang.Class<T> asWrapperType(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
1: aload 0
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
aload 0
invokevirtual sun.invoke.util.Wrapper.wrapperType:(Ljava/lang/Class;)Ljava/lang/Class;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
MethodParameters:
Name Flags
type
public static <T> java.lang.Class<T> asPrimitiveType(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokevirtual sun.invoke.util.Wrapper.primitiveType:()Ljava/lang/Class;
aload 0
invokestatic sun.invoke.util.Wrapper.forceType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Class;
areturn
3: StackMap locals: sun.invoke.util.Wrapper
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 type Ljava/lang/Class<TT;>;
1 4 1 w Lsun/invoke/util/Wrapper;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
MethodParameters:
Name Flags
type
public static boolean isWrapperType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
type
public static boolean isPrimitiveType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
type
public static char basicTypeChar(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 2
1: bipush 76
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)C
MethodParameters:
Name Flags
type
public char basicTypeChar();
descriptor: ()C
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public java.lang.String wrapperSimpleName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.wrapperSimpleName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public java.lang.String primitiveSimpleName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.primitiveSimpleName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
public <T> T cast(, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_1
invokevirtual sun.invoke.util.Wrapper.convert:(Ljava/lang/Object;Ljava/lang/Class;Z)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
0 1 1 x Ljava/lang/Object;
0 1 2 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
x
type
public <T> T convert(, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_0
invokevirtual sun.invoke.util.Wrapper.convert:(Ljava/lang/Object;Ljava/lang/Class;Z)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
0 1 1 x Ljava/lang/Object;
0 1 2 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
x
type
private <T> T convert(, java.lang.Class<T>, );
descriptor: (Ljava/lang/Object;Ljava/lang/Class;Z)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
if_acmpne 6
1: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 2
aload 2
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Class.isInterface:()Z
ifne 4
3: aload 2
aload 1
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals:
StackMap stack:
aload 1
astore 4
start local 4 5: aload 4
areturn
end local 4 6: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual sun.invoke.util.Wrapper.wrapperType:(Ljava/lang/Class;)Ljava/lang/Class;
astore 4
start local 4 7: aload 4
aload 1
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 9
8: aload 4
aload 1
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
9: StackMap locals: java.lang.Class
StackMap stack:
iload 3
ifne 14
10: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 5
start local 5 11: aload 5
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
astore 6
start local 6 12: aload 6
ifnull 13
aload 0
aload 6
invokevirtual sun.invoke.util.Wrapper.isConvertibleFrom:(Lsun/invoke/util/Wrapper;)Z
ifne 17
13: StackMap locals: java.lang.Class sun.invoke.util.Wrapper
StackMap stack:
aload 4
aload 5
invokestatic sun.invoke.util.Wrapper.newClassCastException:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/ClassCastException;
athrow
end local 6 end local 5 14: StackMap locals:
StackMap stack:
aload 1
ifnonnull 17
15: aload 0
getfield sun.invoke.util.Wrapper.zero:Ljava/lang/Object;
astore 5
start local 5 16: aload 5
areturn
end local 5 17: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.invoke.util.Wrapper.wrap:(Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 18: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 21
aload 5
ifnonnull 19
ldc Ljava/lang/Void;
goto 20
StackMap locals: java.lang.Object
StackMap stack:
19: aload 5
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
StackMap locals:
StackMap stack: java.lang.Class
20: aload 4
if_acmpeq 21
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
21: StackMap locals:
StackMap stack:
aload 5
areturn
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 22 0 this Lsun/invoke/util/Wrapper;
0 22 1 x Ljava/lang/Object;
0 22 2 type Ljava/lang/Class<TT;>;
0 22 3 isCast Z
5 6 4 result TT;
7 22 4 wtype Ljava/lang/Class<TT;>;
11 14 5 sourceType Ljava/lang/Class<*>;
12 14 6 source Lsun/invoke/util/Wrapper;
16 17 5 z TT;
18 22 5 result TT;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TT;>;Z)TT;
MethodParameters:
Name Flags
x
type
isCast
static <T> java.lang.Class<T> forceType(java.lang.Class<?>, java.lang.Class<T>);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpeq 5
1: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 2
aload 0
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
aload 1
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
if_acmpeq 5
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 3
aload 1
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
aload 0
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
if_acmpeq 5
3: StackMap locals:
StackMap stack:
aload 0
ldc Ljava/lang/Object;
if_acmpne 4
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 5
4: StackMap locals:
StackMap stack:
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 2
start local 2 7: iload 2
ifne 9
8: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " <= "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
9: StackMap locals: int
StackMap stack:
getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 14
aload 0
aload 1
if_acmpeq 14
10: aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 11
aload 0
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
aload 1
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
if_acmpeq 14
11: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 12
aload 1
invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
aload 0
invokestatic sun.invoke.util.Wrapper.findWrapperType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
if_acmpeq 14
12: StackMap locals:
StackMap stack:
aload 0
ldc Ljava/lang/Object;
if_acmpne 13
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 14
StackMap locals:
StackMap stack:
13: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
aload 0
astore 3
start local 3 15: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 type Ljava/lang/Class<*>;
0 16 1 exampleType Ljava/lang/Class<TT;>;
7 16 2 z Z
15 16 3 result Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<*>;Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
MethodParameters:
Name Flags
type
exampleType
public java.lang.Object wrap(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
lookupswitch { // 2
76: 1
86: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 1
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.invoke.util.Wrapper.numberValue:(Ljava/lang/Object;)Ljava/lang/Number;
astore 2
start local 2 4: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
lookupswitch { // 8
66: 10
67: 11
68: 8
70: 7
73: 5
74: 6
83: 9
90: 12
default: 13
}
5: StackMap locals: java.lang.Number
StackMap stack:
aload 2
invokevirtual java.lang.Number.intValue:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.longValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
7: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.floatValue:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
areturn
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.doubleValue:()D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
9: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.intValue:()I
i2s
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
areturn
10: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.intValue:()I
i2b
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
areturn
11: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.intValue:()I
i2c
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
areturn
12: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.byteValue:()B
invokestatic sun.invoke.util.Wrapper.boolValue:(B)Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
13: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "bad wrapper"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/invoke/util/Wrapper;
0 14 1 x Ljava/lang/Object;
4 14 2 xn Ljava/lang/Number;
MethodParameters:
Name Flags
x
public java.lang.Object wrap(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
bipush 76
if_icmpne 1
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.invoke.util.Wrapper.basicTypeChar:C
tableswitch { // 66 - 90
66: 9
67: 10
68: 7
69: 12
70: 6
71: 12
72: 12
73: 4
74: 5
75: 12
76: 2
77: 12
78: 12
79: 12
80: 12
81: 12
82: 12
83: 8
84: 12
85: 12
86: 3
87: 12
88: 12
89: 12
90: 11
default: 12
}
2: StackMap locals:
StackMap stack:
ldc "cannot wrap to object type"
invokestatic sun.invoke.util.Wrapper.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
3: StackMap locals:
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack:
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
5: StackMap locals:
StackMap stack:
iload 1
i2l
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
6: StackMap locals:
StackMap stack:
iload 1
i2f
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
areturn
7: StackMap locals:
StackMap stack:
iload 1
i2d
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
8: StackMap locals:
StackMap stack:
iload 1
i2s
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
areturn
9: StackMap locals:
StackMap stack:
iload 1
i2b
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
areturn
10: StackMap locals:
StackMap stack:
iload 1
i2c
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
areturn
11: StackMap locals:
StackMap stack:
iload 1
i2b
invokestatic sun.invoke.util.Wrapper.boolValue:(B)Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
12: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "bad wrapper"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/invoke/util/Wrapper;
0 13 1 x I
MethodParameters:
Name Flags
x
private static java.lang.Number numberValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Number;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.lang.Number
ifeq 1
aload 0
checkcast java.lang.Number
areturn
1: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.Character
ifeq 2
aload 0
checkcast java.lang.Character
invokevirtual java.lang.Character.charValue:()C
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.Boolean
ifeq 5
aload 0
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 3
iconst_1
goto 4
StackMap locals:
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
5: StackMap locals:
StackMap stack:
aload 0
checkcast java.lang.Number
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 x Ljava/lang/Object;
MethodParameters:
Name Flags
x
private static boolean boolValue(byte);
descriptor: (B)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iconst_1
iand
i2b
istore 0
1: iload 0
ifeq 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bits B
MethodParameters:
Name Flags
bits
private static java.lang.RuntimeException newIllegalArgumentException(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/RuntimeException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.invoke.util.Wrapper.newIllegalArgumentException:(Ljava/lang/String;)Ljava/lang/RuntimeException;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 message Ljava/lang/String;
0 1 1 x Ljava/lang/Object;
MethodParameters:
Name Flags
message
x
private static java.lang.RuntimeException newIllegalArgumentException(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/RuntimeException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.IllegalArgumentException
dup
aload 0
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 message Ljava/lang/String;
MethodParameters:
Name Flags
message
public java.lang.Object makeArray(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
iload 1
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
0 1 1 len I
MethodParameters:
Name Flags
len
public java.lang.Class<?> arrayType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.invoke.util.Wrapper.emptyArray:Ljava/lang/Object;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/invoke/util/Wrapper;
Signature: ()Ljava/lang/Class<*>;
public void copyArrayUnboxing(java.lang.Object[], int, java.lang.Object, int, int);
descriptor: ([Ljava/lang/Object;ILjava/lang/Object;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
invokevirtual sun.invoke.util.Wrapper.arrayType:()Ljava/lang/Class;
if_acmpeq 2
1: aload 0
invokevirtual sun.invoke.util.Wrapper.arrayType:()Ljava/lang/Class;
aload 3
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 3: goto 8
4: StackMap locals: int
StackMap stack:
aload 1
iload 6
iload 2
iadd
aaload
astore 7
start local 7 5: aload 0
aload 7
aload 0
getfield sun.invoke.util.Wrapper.primitiveType:Ljava/lang/Class;
invokevirtual sun.invoke.util.Wrapper.convert:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
astore 7
6: aload 3
iload 6
iload 4
iadd
aload 7
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
end local 7 7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
iload 5
if_icmplt 4
end local 6 9: 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 10 0 this Lsun/invoke/util/Wrapper;
0 10 1 values [Ljava/lang/Object;
0 10 2 vpos I
0 10 3 a Ljava/lang/Object;
0 10 4 apos I
0 10 5 length I
3 9 6 i I
5 7 7 value Ljava/lang/Object;
MethodParameters:
Name Flags
values
vpos
a
apos
length
public void copyArrayBoxing(java.lang.Object, int, java.lang.Object[], int, int);
descriptor: (Ljava/lang/Object;I[Ljava/lang/Object;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
invokevirtual sun.invoke.util.Wrapper.arrayType:()Ljava/lang/Class;
if_acmpeq 2
1: aload 0
invokevirtual sun.invoke.util.Wrapper.arrayType:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 3: goto 8
4: StackMap locals: int
StackMap stack:
aload 1
iload 6
iload 2
iadd
invokestatic java.lang.reflect.Array.get:(Ljava/lang/Object;I)Ljava/lang/Object;
astore 7
start local 7 5: getstatic sun.invoke.util.Wrapper.$assertionsDisabled:Z
ifne 6
aload 7
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
getfield sun.invoke.util.Wrapper.wrapperType:Ljava/lang/Class;
if_acmpeq 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: java.lang.Object
StackMap stack:
aload 3
iload 6
iload 4
iadd
aload 7
aastore
end local 7 7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
iload 5
if_icmplt 4
end local 6 9: 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 10 0 this Lsun/invoke/util/Wrapper;
0 10 1 a Ljava/lang/Object;
0 10 2 apos I
0 10 3 values [Ljava/lang/Object;
0 10 4 vpos I
0 10 5 length I
3 9 6 i I
5 7 7 value Ljava/lang/Object;
MethodParameters:
Name Flags
a
apos
values
vpos
length
public static sun.invoke.util.Wrapper[] values();
descriptor: ()[Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=0
0: getstatic sun.invoke.util.Wrapper.ENUM$VALUES:[Lsun/invoke/util/Wrapper;
dup
astore 0
iconst_0
aload 0
arraylength
dup
istore 1
anewarray sun.invoke.util.Wrapper
dup
astore 2
iconst_0
iload 1
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
aload 2
areturn
LocalVariableTable:
Start End Slot Name Signature
public static sun.invoke.util.Wrapper valueOf(java.lang.String);
descriptor: (Ljava/lang/String;)Lsun/invoke/util/Wrapper;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
0: ldc Lsun/invoke/util/Wrapper;
aload 0
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
checkcast sun.invoke.util.Wrapper
areturn
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
name
}
Signature: Ljava/lang/Enum<Lsun/invoke/util/Wrapper;>;
SourceFile: "Wrapper.java"
NestMembers:
sun.invoke.util.Wrapper$Format
InnerClasses:
private abstract Format = sun.invoke.util.Wrapper$Format of sun.invoke.util.Wrapper