final class sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter implements sun.awt.geom.PathConsumer2D
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter
super_class: java.lang.Object
{
private sun.awt.geom.PathConsumer2D out;
descriptor: Lsun/awt/geom/PathConsumer2D;
flags: (0x0002) ACC_PRIVATE
private final float[] clipRect;
descriptor: [F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final float[] corners;
descriptor: [F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean init_corners;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final sun.java2d.marlin.Helpers$IndexStack stack;
descriptor: Lsun/java2d/marlin/Helpers$IndexStack;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int cOutCode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int gOutCode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean outside;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private float sx0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float sy0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cx0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cy0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float cox0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float coy0;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private boolean subdivide;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter curveSplitter;
descriptor: Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(sun.java2d.marlin.RendererContext);
descriptor: (Lsun/java2d/marlin/RendererContext;)V
flags: (0x0000)
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
bipush 8
newarray 6
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.corners:[F
2: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.init_corners:Z
3: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
4: aload 0
bipush 15
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
5: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
6: aload 0
getstatic sun.java2d.marlin.MarlinConst.DO_CLIP_SUBDIVIDER:Z
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
7: aload 0
aload 1
getfield sun.java2d.marlin.RendererContext.clipRect:[F
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
8: aload 0
aload 1
getfield sun.java2d.marlin.RendererContext.curveClipSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
9: aload 0
aload 1
getfield sun.java2d.marlin.RendererContext.stats:Lsun/java2d/marlin/RendererStats;
ifnull 16
10: new sun.java2d.marlin.Helpers$IndexStack
dup
aload 1
11: aload 1
getfield sun.java2d.marlin.RendererContext.stats:Lsun/java2d/marlin/RendererStats;
getfield sun.java2d.marlin.RendererStats.stat_pcf_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
12: aload 1
getfield sun.java2d.marlin.RendererContext.stats:Lsun/java2d/marlin/RendererStats;
getfield sun.java2d.marlin.RendererStats.hist_pcf_idxstack_indices:Lsun/java2d/marlin/stats/Histogram;
13: aload 1
getfield sun.java2d.marlin.RendererContext.stats:Lsun/java2d/marlin/RendererStats;
getfield sun.java2d.marlin.RendererStats.stat_array_pcf_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
14: invokespecial sun.java2d.marlin.Helpers$IndexStack.<init>:(Lsun/java2d/marlin/RendererContext;Lsun/java2d/marlin/stats/StatLong;Lsun/java2d/marlin/stats/Histogram;Lsun/java2d/marlin/stats/StatLong;)V
15: goto 17
16: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter sun.java2d.marlin.RendererContext
StackMap stack: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter
new sun.java2d.marlin.Helpers$IndexStack
dup
aload 1
invokespecial sun.java2d.marlin.Helpers$IndexStack.<init>:(Lsun/java2d/marlin/RendererContext;)V
17: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter sun.java2d.marlin.RendererContext
StackMap stack: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter sun.java2d.marlin.Helpers$IndexStack
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
18: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 19 1 rdrCtx Lsun/java2d/marlin/RendererContext;
MethodParameters:
Name Flags
rdrCtx final
sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter init(sun.awt.geom.PathConsumer2D);
descriptor: (Lsun/awt/geom/PathConsumer2D;)Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
1: getstatic sun.java2d.marlin.MarlinConst.DO_CLIP_SUBDIVIDER:Z
ifeq 3
2: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.init:()V
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.init_corners:Z
4: aload 0
bipush 15
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
5: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 6 1 out Lsun/awt/geom/PathConsumer2D;
MethodParameters:
Name Flags
out final
void dispose();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
invokevirtual sun.java2d.marlin.Helpers$IndexStack.dispose:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
private void finishPath();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 6
1: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
ifne 4
2: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finish:()V
3: goto 6
4: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
5: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
invokevirtual sun.java2d.marlin.Helpers$IndexStack.reset:()V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
private void finish();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
1: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
invokevirtual sun.java2d.marlin.Helpers$IndexStack.isEmpty:()Z
ifne 15
2: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.init_corners:Z
ifeq 14
3: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.init_corners:Z
4: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.corners:[F
astore 1
start local 1 5: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
astore 2
start local 2 6: aload 1
iconst_0
aload 2
iconst_2
faload
fastore
7: aload 1
iconst_1
aload 2
iconst_0
faload
fastore
8: aload 1
iconst_2
aload 2
iconst_2
faload
fastore
9: aload 1
iconst_3
aload 2
iconst_1
faload
fastore
10: aload 1
iconst_4
aload 2
iconst_3
faload
fastore
11: aload 1
iconst_5
aload 2
iconst_0
faload
fastore
12: aload 1
bipush 6
aload 2
iconst_3
faload
fastore
13: aload 1
bipush 7
aload 2
iconst_1
faload
fastore
end local 2 end local 1 14: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.corners:[F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
invokevirtual sun.java2d.marlin.Helpers$IndexStack.pullAll:([FLsun/awt/geom/PathConsumer2D;)V
15: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
invokeinterface sun.awt.geom.PathConsumer2D.lineTo:(FF)V
16: aload 0
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
17: aload 0
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
18: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
5 14 1 _corners [F
6 14 2 _clipRect [F
public void pathDone();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finishPath:()V
1: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
invokeinterface sun.awt.geom.PathConsumer2D.pathDone:()V
2: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.dispose:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
public void closePath();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finishPath:()V
1: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
invokeinterface sun.awt.geom.PathConsumer2D.closePath:()V
2: aload 0
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sx0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sy0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
3: aload 0
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sx0:F
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
4: aload 0
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sy0:F
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
public void moveTo(float, float);
descriptor: (FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finishPath:()V
1: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
fload 1
fload 2
invokeinterface sun.awt.geom.PathConsumer2D.moveTo:(FF)V
2: aload 0
fload 1
fload 2
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
3: aload 0
fload 1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
4: aload 0
fload 2
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
5: aload 0
fload 1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sx0:F
6: aload 0
fload 2
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.sy0:F
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 8 1 x0 F
0 8 2 y0 F
MethodParameters:
Name Flags
x0 final
y0 final
public void lineTo(float, float);
descriptor: (FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
istore 3
start local 3 1: fload 1
fload 2
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 4
start local 4 2: iload 3
iload 4
ior
istore 5
start local 5 3: iload 5
ifeq 26
4: iload 3
iload 4
iand
istore 6
start local 6 5: iload 6
ifne 19
6: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
ifeq 26
7: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
8: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 13
9: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
fload 1
fload 2
10: iload 5
aload 0
11: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitLine:(FFFFILsun/awt/geom/PathConsumer2D;)Z
istore 7
start local 7 12: goto 16
end local 7 13: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter float float int int int int
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
fload 1
fload 2
14: iload 5
aload 0
15: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitLine:(FFFFILsun/awt/geom/PathConsumer2D;)Z
istore 7
start local 7 16: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
17: iload 7
ifeq 26
18: return
end local 7 19: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
20: aload 0
dup
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
iload 6
iand
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
21: aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
22: aload 0
fload 1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
23: aload 0
fload 2
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
24: aload 0
iload 6
iload 3
iload 4
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clip:(III)V
25: return
end local 6 26: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
27: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
28: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 30
29: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finish:()V
30: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
fload 1
fload 2
invokeinterface sun.awt.geom.PathConsumer2D.lineTo:(FF)V
31: aload 0
fload 1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
32: aload 0
fload 2
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
33: 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 34 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 34 1 xe F
0 34 2 ye F
1 34 3 outcode0 I
2 34 4 outcode1 I
3 34 5 orCode I
5 26 6 sideCode I
12 13 7 ret Z
16 19 7 ret Z
MethodParameters:
Name Flags
xe final
ye final
private void clip(int, int, int);
descriptor: (III)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iload 3
if_icmpeq 19
1: iload 1
bipush 12
iand
ifeq 19
2: iload 2
iload 3
ior
istore 4
start local 4 3: iload 4
iconst_3
iand
istore 5
start local 5 4: iload 4
bipush 12
iand
istore 6
start local 6 5: iload 6
iconst_4
if_icmpne 6
iconst_0
goto 7
StackMap locals: int int int
StackMap stack:
6: iconst_2
StackMap locals:
StackMap stack: int
7: istore 7
start local 7 8: iload 5
tableswitch { // 1 - 2
1: 9
2: 11
default: 13
}
9: StackMap locals: int
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
10: return
11: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
iconst_1
iadd
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
12: return
13: StackMap locals:
StackMap stack:
iload 2
iconst_1
iand
ifeq 17
14: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
15: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
iconst_1
iadd
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
16: goto 19
17: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
iconst_1
iadd
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
18: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.stack:Lsun/java2d/marlin/Helpers$IndexStack;
iload 7
invokevirtual sun.java2d.marlin.Helpers$IndexStack.push:(I)V
end local 7 end local 6 end local 5 end local 4 19: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter int int int
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 20 1 sideCode I
0 20 2 outcode0 I
0 20 3 outcode1 I
3 19 4 mergeCode I
4 19 5 tbCode I
5 19 6 lrCode I
8 19 7 off I
MethodParameters:
Name Flags
sideCode final
outcode0 final
outcode1 final
public void curveTo(float, float, float, float, float, float);
descriptor: (FFFFFF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=14, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
istore 7
start local 7 1: fload 1
fload 2
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 8
start local 8 2: fload 3
fload 4
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 9
start local 9 3: fload 5
fload 6
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 10
start local 10 4: iload 7
iload 8
ior
iload 9
ior
iload 10
ior
istore 11
start local 11 5: iload 11
ifeq 30
6: iload 7
iload 8
iand
iload 9
iand
iload 10
iand
istore 12
start local 12 7: iload 12
ifne 23
8: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
ifeq 30
9: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
10: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 16
11: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
fload 1
fload 2
12: fload 3
fload 4
fload 5
fload 6
13: iload 11
aload 0
14: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitCurve:(FFFFFFFFILsun/awt/geom/PathConsumer2D;)Z
istore 13
start local 13 15: goto 20
end local 13 16: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter float float float float float float int int int int int int
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
fload 1
fload 2
17: fload 3
fload 4
fload 5
fload 6
18: iload 11
aload 0
19: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitCurve:(FFFFFFFFILsun/awt/geom/PathConsumer2D;)Z
istore 13
start local 13 20: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
21: iload 13
ifeq 30
22: return
end local 13 23: StackMap locals:
StackMap stack:
aload 0
iload 10
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
24: aload 0
dup
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
iload 12
iand
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
25: aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
26: aload 0
fload 5
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
27: aload 0
fload 6
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
28: aload 0
iload 12
iload 7
iload 10
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clip:(III)V
29: return
end local 12 30: StackMap locals:
StackMap stack:
aload 0
iload 10
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
31: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
32: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 34
33: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finish:()V
34: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
fload 1
fload 2
fload 3
fload 4
fload 5
fload 6
invokeinterface sun.awt.geom.PathConsumer2D.curveTo:(FFFFFF)V
35: aload 0
fload 5
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
36: aload 0
fload 6
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
37: 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 38 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 38 1 x1 F
0 38 2 y1 F
0 38 3 x2 F
0 38 4 y2 F
0 38 5 xe F
0 38 6 ye F
1 38 7 outcode0 I
2 38 8 outcode1 I
3 38 9 outcode2 I
4 38 10 outcode3 I
5 38 11 orCode I
7 30 12 sideCode I
15 16 13 ret Z
20 23 13 ret Z
MethodParameters:
Name Flags
x1 final
y1 final
x2 final
y2 final
xe final
ye final
public void quadTo(float, float, float, float);
descriptor: (FFFF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
istore 5
start local 5 1: fload 1
fload 2
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 6
start local 6 2: fload 3
fload 4
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clipRect:[F
invokestatic sun.java2d.marlin.Helpers.outcode:(FF[F)I
istore 7
start local 7 3: iload 5
iload 6
ior
iload 7
ior
istore 8
start local 8 4: iload 8
ifeq 27
5: iload 5
iload 6
iand
iload 7
iand
istore 9
start local 9 6: iload 9
ifne 20
7: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
ifeq 27
8: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
9: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 14
10: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
fload 1
fload 2
11: fload 3
fload 4
iload 8
aload 0
12: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitQuad:(FFFFFFILsun/awt/geom/PathConsumer2D;)Z
istore 10
start local 10 13: goto 17
end local 10 14: StackMap locals: sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter float float float float int int int int int
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.curveSplitter:Lsun/java2d/marlin/TransformingPathConsumer2D$CurveClipSplitter;
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
fload 1
fload 2
15: fload 3
fload 4
iload 8
aload 0
16: invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter.splitQuad:(FFFFFFILsun/awt/geom/PathConsumer2D;)Z
istore 10
start local 10 17: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.subdivide:Z
18: iload 10
ifeq 27
19: return
end local 10 20: StackMap locals:
StackMap stack:
aload 0
iload 7
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
21: aload 0
dup
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
iload 9
iand
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
22: aload 0
iconst_1
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
23: aload 0
fload 3
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cox0:F
24: aload 0
fload 4
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.coy0:F
25: aload 0
iload 9
iload 5
iload 7
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.clip:(III)V
26: return
end local 9 27: StackMap locals:
StackMap stack:
aload 0
iload 7
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cOutCode:I
28: aload 0
iconst_0
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.gOutCode:I
29: aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.outside:Z
ifeq 31
30: aload 0
invokevirtual sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.finish:()V
31: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.out:Lsun/awt/geom/PathConsumer2D;
fload 1
fload 2
fload 3
fload 4
invokeinterface sun.awt.geom.PathConsumer2D.quadTo:(FFFF)V
32: aload 0
fload 3
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cx0:F
33: aload 0
fload 4
putfield sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter.cy0:F
34: return
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 35 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
0 35 1 x1 F
0 35 2 y1 F
0 35 3 xe F
0 35 4 ye F
1 35 5 outcode0 I
2 35 6 outcode1 I
3 35 7 outcode2 I
4 35 8 orCode I
6 27 9 sideCode I
13 14 10 ret Z
17 20 10 ret Z
MethodParameters:
Name Flags
x1 final
y1 final
xe final
ye final
public long getNativeConsumer();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.InternalError
dup
ldc "Not using a native peer"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/java2d/marlin/TransformingPathConsumer2D$PathClipFilter;
}
SourceFile: "TransformingPathConsumer2D.java"
NestHost: sun.java2d.marlin.TransformingPathConsumer2D
InnerClasses:
final IndexStack = sun.java2d.marlin.Helpers$IndexStack of sun.java2d.marlin.Helpers
final CurveClipSplitter = sun.java2d.marlin.TransformingPathConsumer2D$CurveClipSplitter of sun.java2d.marlin.TransformingPathConsumer2D
final PathClipFilter = sun.java2d.marlin.TransformingPathConsumer2D$PathClipFilter of sun.java2d.marlin.TransformingPathConsumer2D