public class sun.awt.IconInfo
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.awt.IconInfo
super_class: java.lang.Object
{
private int[] intIconData;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private long[] longIconData;
descriptor: [J
flags: (0x0002) ACC_PRIVATE
private java.awt.Image image;
descriptor: Ljava/awt/Image;
flags: (0x0002) ACC_PRIVATE
private final int width;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int height;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int scaledWidth;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int scaledHeight;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int rawLength;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(int[]);
descriptor: ([I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: aload 1
ifnonnull 3
aconst_null
goto 4
StackMap locals: sun.awt.IconInfo int[]
StackMap stack: sun.awt.IconInfo
3: aload 1
aload 1
arraylength
invokestatic java.util.Arrays.copyOf:([II)[I
4: StackMap locals: sun.awt.IconInfo int[]
StackMap stack: sun.awt.IconInfo int[]
putfield sun.awt.IconInfo.intIconData:[I
5: aload 0
aload 1
iconst_0
iaload
putfield sun.awt.IconInfo.width:I
6: aload 0
aload 1
iconst_1
iaload
putfield sun.awt.IconInfo.height:I
7: aload 0
aload 0
getfield sun.awt.IconInfo.width:I
putfield sun.awt.IconInfo.scaledWidth:I
8: aload 0
aload 0
getfield sun.awt.IconInfo.height:I
putfield sun.awt.IconInfo.scaledHeight:I
9: aload 0
aload 0
getfield sun.awt.IconInfo.width:I
aload 0
getfield sun.awt.IconInfo.height:I
imul
iconst_2
iadd
putfield sun.awt.IconInfo.rawLength:I
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/awt/IconInfo;
0 11 1 intIconData [I
MethodParameters:
Name Flags
intIconData
public void <init>(long[]);
descriptor: ([J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: aload 1
ifnonnull 3
aconst_null
goto 4
StackMap locals: sun.awt.IconInfo long[]
StackMap stack: sun.awt.IconInfo
3: aload 1
aload 1
arraylength
invokestatic java.util.Arrays.copyOf:([JI)[J
4: StackMap locals: sun.awt.IconInfo long[]
StackMap stack: sun.awt.IconInfo long[]
putfield sun.awt.IconInfo.longIconData:[J
5: aload 0
aload 1
iconst_0
laload
l2i
putfield sun.awt.IconInfo.width:I
6: aload 0
aload 1
iconst_1
laload
l2i
putfield sun.awt.IconInfo.height:I
7: aload 0
aload 0
getfield sun.awt.IconInfo.width:I
putfield sun.awt.IconInfo.scaledWidth:I
8: aload 0
aload 0
getfield sun.awt.IconInfo.height:I
putfield sun.awt.IconInfo.scaledHeight:I
9: aload 0
aload 0
getfield sun.awt.IconInfo.width:I
aload 0
getfield sun.awt.IconInfo.height:I
imul
iconst_2
iadd
putfield sun.awt.IconInfo.rawLength:I
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/awt/IconInfo;
0 11 1 longIconData [J
MethodParameters:
Name Flags
longIconData
public void <init>(java.awt.Image);
descriptor: (Ljava/awt/Image;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.awt.IconInfo.image:Ljava/awt/Image;
2: aload 1
instanceof sun.awt.image.ToolkitImage
ifeq 8
3: aload 1
checkcast sun.awt.image.ToolkitImage
invokevirtual sun.awt.image.ToolkitImage.getImageRep:()Lsun/awt/image/ImageRepresentation;
astore 2
start local 2 4: aload 2
bipush 32
invokevirtual sun.awt.image.ImageRepresentation.reconstruct:(I)V
5: aload 0
aload 2
invokevirtual sun.awt.image.ImageRepresentation.getWidth:()I
putfield sun.awt.IconInfo.width:I
6: aload 0
aload 2
invokevirtual sun.awt.image.ImageRepresentation.getHeight:()I
putfield sun.awt.IconInfo.height:I
end local 2 7: goto 10
8: StackMap locals: sun.awt.IconInfo java.awt.Image
StackMap stack:
aload 0
aload 1
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
putfield sun.awt.IconInfo.width:I
9: aload 0
aload 1
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
putfield sun.awt.IconInfo.height:I
10: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.awt.IconInfo.width:I
putfield sun.awt.IconInfo.scaledWidth:I
11: aload 0
aload 0
getfield sun.awt.IconInfo.height:I
putfield sun.awt.IconInfo.scaledHeight:I
12: aload 0
aload 0
getfield sun.awt.IconInfo.width:I
aload 0
getfield sun.awt.IconInfo.height:I
imul
iconst_2
iadd
putfield sun.awt.IconInfo.rawLength:I
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/awt/IconInfo;
0 14 1 image Ljava/awt/Image;
4 7 2 ir Lsun/awt/image/ImageRepresentation;
MethodParameters:
Name Flags
image
public void setScaledSize(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
putfield sun.awt.IconInfo.scaledWidth:I
1: aload 0
iload 2
putfield sun.awt.IconInfo.scaledHeight:I
2: aload 0
iload 1
iload 2
imul
iconst_2
iadd
putfield sun.awt.IconInfo.rawLength:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/IconInfo;
0 4 1 width I
0 4 2 height I
MethodParameters:
Name Flags
width
height
public boolean isValid();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.width:I
ifle 1
aload 0
getfield sun.awt.IconInfo.height:I
ifle 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/awt/IconInfo;
public int getWidth();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.width:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/IconInfo;
public int getHeight();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.height:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/IconInfo;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "IconInfo[w="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.awt.IconInfo.width:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ",h="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.awt.IconInfo.height:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ",sw="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.awt.IconInfo.scaledWidth:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ",sh="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.awt.IconInfo.scaledHeight:I
invokevirtual java.lang.StringBuilder.append:(I)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 this Lsun/awt/IconInfo;
public int getRawLength();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.rawLength:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/IconInfo;
public int[] getIntData();
descriptor: ()[I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.intIconData:[I
ifnonnull 6
1: aload 0
getfield sun.awt.IconInfo.longIconData:[J
ifnull 4
2: aload 0
aload 0
getfield sun.awt.IconInfo.longIconData:[J
invokestatic sun.awt.IconInfo.longArrayToIntArray:([J)[I
putfield sun.awt.IconInfo.intIconData:[I
3: goto 6
StackMap locals:
StackMap stack:
4: aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
ifnull 6
5: aload 0
aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
aload 0
getfield sun.awt.IconInfo.scaledWidth:I
aload 0
getfield sun.awt.IconInfo.scaledHeight:I
invokestatic sun.awt.IconInfo.imageToIntArray:(Ljava/awt/Image;II)[I
putfield sun.awt.IconInfo.intIconData:[I
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.IconInfo.intIconData:[I
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/awt/IconInfo;
public long[] getLongData();
descriptor: ()[J
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.longIconData:[J
ifnonnull 7
1: aload 0
getfield sun.awt.IconInfo.intIconData:[I
ifnull 4
2: aload 0
aload 0
getfield sun.awt.IconInfo.intIconData:[I
invokestatic sun.awt.IconInfo.intArrayToLongArray:([I)[J
putfield sun.awt.IconInfo.longIconData:[J
3: goto 7
StackMap locals:
StackMap stack:
4: aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
ifnull 7
5: aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
aload 0
getfield sun.awt.IconInfo.scaledWidth:I
aload 0
getfield sun.awt.IconInfo.scaledHeight:I
invokestatic sun.awt.IconInfo.imageToIntArray:(Ljava/awt/Image;II)[I
astore 1
start local 1 6: aload 0
aload 1
invokestatic sun.awt.IconInfo.intArrayToLongArray:([I)[J
putfield sun.awt.IconInfo.longIconData:[J
end local 1 7: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.IconInfo.longIconData:[J
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/awt/IconInfo;
6 7 1 intIconData [I
public java.awt.Image getImage();
descriptor: ()Ljava/awt/Image;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
ifnonnull 7
1: aload 0
getfield sun.awt.IconInfo.intIconData:[I
ifnull 4
2: aload 0
aload 0
getfield sun.awt.IconInfo.intIconData:[I
invokestatic sun.awt.IconInfo.intArrayToImage:([I)Ljava/awt/Image;
putfield sun.awt.IconInfo.image:Ljava/awt/Image;
3: goto 7
StackMap locals:
StackMap stack:
4: aload 0
getfield sun.awt.IconInfo.longIconData:[J
ifnull 7
5: aload 0
getfield sun.awt.IconInfo.longIconData:[J
invokestatic sun.awt.IconInfo.longArrayToIntArray:([J)[I
astore 1
start local 1 6: aload 0
aload 1
invokestatic sun.awt.IconInfo.intArrayToImage:([I)Ljava/awt/Image;
putfield sun.awt.IconInfo.image:Ljava/awt/Image;
end local 1 7: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.IconInfo.image:Ljava/awt/Image;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/awt/IconInfo;
6 7 1 intIconData [I
private static int[] longArrayToIntArray(long[]);
descriptor: ([J)[I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
arraylength
newarray 10
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
laload
l2i
iastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 longData [J
1 7 1 intData [I
2 6 2 i I
MethodParameters:
Name Flags
longData
private static long[] intArrayToLongArray(int[]);
descriptor: ([I)[J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
arraylength
newarray 11
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: long[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
iaload
i2l
lastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 intData [I
1 7 1 longData [J
2 6 2 i I
MethodParameters:
Name Flags
intData
static java.awt.Image intArrayToImage(int[]);
descriptor: ([I)Ljava/awt/Image;
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=5, args_size=1
start local 0 0: new java.awt.image.DirectColorModel
dup
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
bipush 32
1: ldc 16711680
ldc 65280
sipush 255
ldc -16777216
2: iconst_0
iconst_3
3: invokespecial java.awt.image.DirectColorModel.<init>:(Ljava/awt/color/ColorSpace;IIIIIZI)V
4: astore 1
start local 1 5: new java.awt.image.DataBufferInt
dup
aload 0
aload 0
arraylength
iconst_2
isub
iconst_2
invokespecial java.awt.image.DataBufferInt.<init>:([III)V
astore 2
start local 2 6: aload 2
aload 0
iconst_0
iaload
aload 0
iconst_1
iaload
7: aload 0
iconst_0
iaload
8: iconst_4
newarray 10
dup
iconst_0
ldc 16711680
iastore
dup
iconst_1
ldc 65280
iastore
dup
iconst_2
9: sipush 255
iastore
dup
iconst_3
ldc -16777216
iastore
10: aconst_null
11: invokestatic java.awt.image.Raster.createPackedRaster:(Ljava/awt/image/DataBuffer;III[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
12: astore 3
start local 3 13: new java.awt.image.BufferedImage
dup
aload 1
aload 3
iconst_0
aconst_null
invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
astore 4
start local 4 14: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 raw [I
5 15 1 cm Ljava/awt/image/ColorModel;
6 15 2 buffer Ljava/awt/image/DataBuffer;
13 15 3 raster Ljava/awt/image/WritableRaster;
14 15 4 im Ljava/awt/image/BufferedImage;
MethodParameters:
Name Flags
raw
static int[] imageToIntArray(java.awt.Image, int, int);
descriptor: (Ljava/awt/Image;II)[I
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=10, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifle 1
iload 2
ifgt 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
new java.awt.image.DirectColorModel
dup
sipush 1000
invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
bipush 32
3: ldc 16711680
ldc 65280
sipush 255
ldc -16777216
4: iconst_0
iconst_3
5: invokespecial java.awt.image.DirectColorModel.<init>:(Ljava/awt/color/ColorSpace;IIIIIZI)V
6: astore 3
start local 3 7: new java.awt.image.DataBufferInt
dup
iload 1
iload 2
imul
invokespecial java.awt.image.DataBufferInt.<init>:(I)V
astore 4
start local 4 8: aload 4
iload 1
iload 2
9: iload 1
10: iconst_4
newarray 10
dup
iconst_0
ldc 16711680
iastore
dup
iconst_1
ldc 65280
iastore
dup
iconst_2
11: sipush 255
iastore
dup
iconst_3
ldc -16777216
iastore
12: aconst_null
13: invokestatic java.awt.image.Raster.createPackedRaster:(Ljava/awt/image/DataBuffer;III[ILjava/awt/Point;)Ljava/awt/image/WritableRaster;
14: astore 5
start local 5 15: new java.awt.image.BufferedImage
dup
aload 3
aload 5
iconst_0
aconst_null
invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
astore 6
start local 6 16: aload 6
invokevirtual java.awt.image.BufferedImage.getGraphics:()Ljava/awt/Graphics;
astore 7
start local 7 17: aload 7
aload 0
iconst_0
iconst_0
iload 1
iload 2
aconst_null
invokevirtual java.awt.Graphics.drawImage:(Ljava/awt/Image;IIIILjava/awt/image/ImageObserver;)Z
pop
18: aload 7
invokevirtual java.awt.Graphics.dispose:()V
19: aload 4
invokevirtual java.awt.image.DataBufferInt.getData:()[I
astore 8
start local 8 20: iload 1
iload 2
imul
iconst_2
iadd
newarray 10
astore 9
start local 9 21: aload 9
iconst_0
iload 1
iastore
22: aload 9
iconst_1
iload 2
iastore
23: aload 8
iconst_0
aload 9
iconst_2
iload 1
iload 2
imul
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
24: aload 9
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 image Ljava/awt/Image;
0 25 1 width I
0 25 2 height I
7 25 3 cm Ljava/awt/image/ColorModel;
8 25 4 buffer Ljava/awt/image/DataBufferInt;
15 25 5 raster Ljava/awt/image/WritableRaster;
16 25 6 im Ljava/awt/image/BufferedImage;
17 25 7 g Ljava/awt/Graphics;
20 25 8 data [I
21 25 9 raw [I
MethodParameters:
Name Flags
image
width
height
}
SourceFile: "IconInfo.java"