public abstract class com.sun.prism.j2d.paint.MultipleGradientPaint implements java.awt.Paint
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.prism.j2d.paint.MultipleGradientPaint
super_class: java.lang.Object
{
final int transparency;
descriptor: I
flags: (0x0010) ACC_FINAL
final float[] fractions;
descriptor: [F
flags: (0x0010) ACC_FINAL
final java.awt.Color[] colors;
descriptor: [Ljava/awt/Color;
flags: (0x0010) ACC_FINAL
final java.awt.geom.AffineTransform gradientTransform;
descriptor: Ljava/awt/geom/AffineTransform;
flags: (0x0010) ACC_FINAL
final com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod cycleMethod;
descriptor: Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;
flags: (0x0010) ACC_FINAL
final com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType colorSpace;
descriptor: Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;
flags: (0x0010) ACC_FINAL
java.awt.image.ColorModel model;
descriptor: Ljava/awt/image/ColorModel;
flags: (0x0000)
float[] normalizedIntervals;
descriptor: [F
flags: (0x0000)
boolean isSimpleLookup;
descriptor: Z
flags: (0x0000)
java.lang.ref.SoftReference<int[][]> gradients;
descriptor: Ljava/lang/ref/SoftReference;
flags: (0x0000)
Signature: Ljava/lang/ref/SoftReference<[[I>;
java.lang.ref.SoftReference<int[]> gradient;
descriptor: Ljava/lang/ref/SoftReference;
flags: (0x0000)
Signature: Ljava/lang/ref/SoftReference<[I>;
int fastGradientArraySize;
descriptor: I
flags: (0x0000)
void <init>(float[], java.awt.Color[], com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod, com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType, java.awt.geom.AffineTransform);
descriptor: ([F[Ljava/awt/Color;Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;Ljava/awt/geom/AffineTransform;)V
flags: (0x0000)
Code:
stack=5, locals=13, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "Fractions array cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform
StackMap stack:
aload 2
ifnonnull 5
4: new java.lang.NullPointerException
dup
ldc "Colors array cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 3
ifnonnull 7
6: new java.lang.NullPointerException
dup
ldc "Cycle method cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 4
ifnonnull 9
8: new java.lang.NullPointerException
dup
ldc "Color space cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 5
ifnonnull 11
10: new java.lang.NullPointerException
dup
ldc "Gradient transform cannot be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 1
arraylength
aload 2
arraylength
if_icmpeq 13
12: new java.lang.IllegalArgumentException
dup
ldc "Colors and fractions must have equal size"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
aload 2
arraylength
iconst_2
if_icmpge 15
14: new java.lang.IllegalArgumentException
dup
ldc "User must specify at least 2 colors"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
ldc -1.0
fstore 6
start local 6 16: aload 1
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 28
StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float top int int float[]
StackMap stack:
17: aload 10
iload 8
faload
fstore 7
start local 7 18: fload 7
fconst_0
fcmpg
iflt 19
fload 7
fconst_1
fcmpl
ifle 22
19: StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float float int int float[]
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Fraction values must be in the range 0 to 1: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
20: fload 7
invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
21: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals:
StackMap stack:
fload 7
fload 6
fcmpg
ifgt 26
23: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Keyframe fractions must be increasing: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
24: fload 7
invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
25: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
26: StackMap locals:
StackMap stack:
fload 7
fstore 6
end local 7 27: iinc 8 1
StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float top int int float[]
StackMap stack:
28: iload 8
iload 9
if_icmplt 17
29: iconst_0
istore 7
start local 7 30: iconst_0
istore 8
start local 8 31: aload 1
arraylength
istore 9
start local 9 32: iconst_0
istore 10
start local 10 33: aload 1
iconst_0
faload
fconst_0
fcmpl
ifeq 37
34: iconst_1
istore 7
35: iinc 9 1
36: iinc 10 1
37: StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float int int int int
StackMap stack:
aload 1
aload 1
arraylength
iconst_1
isub
faload
fconst_1
fcmpl
ifeq 40
38: iconst_1
istore 8
39: iinc 9 1
40: StackMap locals:
StackMap stack:
aload 0
iload 9
newarray 6
putfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
41: aload 1
iconst_0
aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
iload 10
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
42: aload 0
iload 9
anewarray java.awt.Color
putfield com.sun.prism.j2d.paint.MultipleGradientPaint.colors:[Ljava/awt/Color;
43: aload 2
iconst_0
aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.colors:[Ljava/awt/Color;
iload 10
aload 2
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
44: iload 7
ifeq 47
45: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
iconst_0
fconst_0
fastore
46: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.colors:[Ljava/awt/Color;
iconst_0
aload 2
iconst_0
aaload
aastore
47: StackMap locals:
StackMap stack:
iload 8
ifeq 50
48: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
iload 9
iconst_1
isub
fconst_1
fastore
49: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.colors:[Ljava/awt/Color;
iload 9
iconst_1
isub
aload 2
aload 2
arraylength
iconst_1
isub
aaload
aastore
50: StackMap locals:
StackMap stack:
aload 0
aload 4
putfield com.sun.prism.j2d.paint.MultipleGradientPaint.colorSpace:Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;
51: aload 0
aload 3
putfield com.sun.prism.j2d.paint.MultipleGradientPaint.cycleMethod:Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;
52: aload 0
new java.awt.geom.AffineTransform
dup
aload 5
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
putfield com.sun.prism.j2d.paint.MultipleGradientPaint.gradientTransform:Ljava/awt/geom/AffineTransform;
53: iconst_1
istore 11
start local 11 54: iconst_0
istore 12
start local 12 55: goto 60
56: StackMap locals: int int
StackMap stack:
iload 11
ifeq 57
aload 2
iload 12
aaload
invokevirtual java.awt.Color.getAlpha:()I
sipush 255
if_icmpne 57
iconst_1
goto 58
StackMap locals:
StackMap stack:
57: iconst_0
StackMap locals:
StackMap stack: int
58: istore 11
59: iinc 12 1
StackMap locals:
StackMap stack:
60: iload 12
aload 2
arraylength
if_icmplt 56
end local 12 61: aload 0
iload 11
ifeq 62
iconst_1
goto 63
StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float int int int int int
StackMap stack: com.sun.prism.j2d.paint.MultipleGradientPaint
62: iconst_3
StackMap locals: com.sun.prism.j2d.paint.MultipleGradientPaint float[] java.awt.Color[] com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType java.awt.geom.AffineTransform float int int int int int
StackMap stack: com.sun.prism.j2d.paint.MultipleGradientPaint int
63: putfield com.sun.prism.j2d.paint.MultipleGradientPaint.transparency:I
64: return
end local 11 end local 10 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 65 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
0 65 1 fractions [F
0 65 2 colors [Ljava/awt/Color;
0 65 3 cycleMethod Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;
0 65 4 colorSpace Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;
0 65 5 gradientTransform Ljava/awt/geom/AffineTransform;
16 65 6 previousFraction F
18 27 7 currentFraction F
30 65 7 fixFirst Z
31 65 8 fixLast Z
32 65 9 len I
33 65 10 off I
54 65 11 opaque Z
55 61 12 i I
MethodParameters:
Name Flags
fractions
colors
cycleMethod
colorSpace
gradientTransform
public final float[] getFractions();
descriptor: ()[F
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
arraylength
newarray 6
astore 1
start local 1 1: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
iconst_0
aload 1
iconst_0
aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
1 3 1 copy [F
public final java.awt.Color[] getColors();
descriptor: ()[Ljava/awt/Color;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
arraylength
anewarray java.awt.Color
astore 1
start local 1 1: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
iconst_0
aload 1
iconst_0
aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.fractions:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
1 3 1 copy [Ljava/awt/Color;
public final com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod getCycleMethod();
descriptor: ()Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.cycleMethod:Lcom/sun/prism/j2d/paint/MultipleGradientPaint$CycleMethod;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
public final com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType getColorSpace();
descriptor: ()Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.colorSpace:Lcom/sun/prism/j2d/paint/MultipleGradientPaint$ColorSpaceType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
public final java.awt.geom.AffineTransform getTransform();
descriptor: ()Ljava/awt/geom/AffineTransform;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.awt.geom.AffineTransform
dup
aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.gradientTransform:Ljava/awt/geom/AffineTransform;
invokespecial java.awt.geom.AffineTransform.<init>:(Ljava/awt/geom/AffineTransform;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
public final int getTransparency();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.j2d.paint.MultipleGradientPaint.transparency:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/j2d/paint/MultipleGradientPaint;
}
SourceFile: "MultipleGradientPaint.java"
NestMembers:
com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod
InnerClasses:
public final ColorSpaceType = com.sun.prism.j2d.paint.MultipleGradientPaint$ColorSpaceType of com.sun.prism.j2d.paint.MultipleGradientPaint
public final CycleMethod = com.sun.prism.j2d.paint.MultipleGradientPaint$CycleMethod of com.sun.prism.j2d.paint.MultipleGradientPaint