class sun.font.Underline$IMGrayUnderline extends sun.font.Underline
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.font.Underline$IMGrayUnderline
super_class: sun.font.Underline
{
private java.awt.BasicStroke stroke;
descriptor: Ljava/awt/BasicStroke;
flags: (0x0002) ACC_PRIVATE
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=11, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.font.Underline.<init>:()V
1: aload 0
new java.awt.BasicStroke
dup
fconst_1
2: iconst_0
3: iconst_0
4: ldc 10.0
5: iconst_2
newarray 6
dup
iconst_0
fconst_1
fastore
dup
iconst_1
fconst_1
fastore
6: fconst_0
invokespecial java.awt.BasicStroke.<init>:(FIIF[FF)V
7: putfield sun.font.Underline$IMGrayUnderline.stroke:Ljava/awt/BasicStroke;
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/font/Underline$IMGrayUnderline;
void drawUnderline(java.awt.Graphics2D, float, float, float, float);
descriptor: (Ljava/awt/Graphics2D;FFFF)V
flags: (0x0000)
Code:
stack=6, 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.awt.Graphics2D.getStroke:()Ljava/awt/Stroke;
astore 6
start local 6 1: aload 1
aload 0
getfield sun.font.Underline$IMGrayUnderline.stroke:Ljava/awt/BasicStroke;
invokevirtual java.awt.Graphics2D.setStroke:(Ljava/awt/Stroke;)V
2: new java.awt.geom.Line2D$Float
dup
fload 3
fload 5
fload 4
fload 5
invokespecial java.awt.geom.Line2D$Float.<init>:(FFFF)V
astore 7
start local 7 3: aload 1
aload 7
invokevirtual java.awt.Graphics2D.draw:(Ljava/awt/Shape;)V
4: aload 7
dup
getfield java.awt.geom.Line2D$Float.y1:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.y1:F
5: aload 7
dup
getfield java.awt.geom.Line2D$Float.y2:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.y2:F
6: aload 7
dup
getfield java.awt.geom.Line2D$Float.x1:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.x1:F
7: aload 1
aload 7
invokevirtual java.awt.Graphics2D.draw:(Ljava/awt/Shape;)V
8: aload 1
aload 6
invokevirtual java.awt.Graphics2D.setStroke:(Ljava/awt/Stroke;)V
9: return
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 10 0 this Lsun/font/Underline$IMGrayUnderline;
0 10 1 g2d Ljava/awt/Graphics2D;
0 10 2 thickness F
0 10 3 x1 F
0 10 4 x2 F
0 10 5 y F
1 10 6 saveStroke Ljava/awt/Stroke;
3 10 7 drawLine Ljava/awt/geom/Line2D$Float;
MethodParameters:
Name Flags
g2d
thickness
x1
x2
y
float getLowerDrawLimit(float);
descriptor: (F)F
flags: (0x0000)
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: fconst_2
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/Underline$IMGrayUnderline;
0 1 1 thickness F
MethodParameters:
Name Flags
thickness
java.awt.Shape getUnderlineShape(float, float, float, float);
descriptor: (FFFF)Ljava/awt/Shape;
flags: (0x0000)
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.awt.geom.GeneralPath
dup
invokespecial java.awt.geom.GeneralPath.<init>:()V
astore 5
start local 5 1: new java.awt.geom.Line2D$Float
dup
fload 2
fload 4
fload 3
fload 4
invokespecial java.awt.geom.Line2D$Float.<init>:(FFFF)V
astore 6
start local 6 2: aload 5
aload 0
getfield sun.font.Underline$IMGrayUnderline.stroke:Ljava/awt/BasicStroke;
aload 6
invokevirtual java.awt.BasicStroke.createStrokedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
iconst_0
invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
3: aload 6
dup
getfield java.awt.geom.Line2D$Float.y1:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.y1:F
4: aload 6
dup
getfield java.awt.geom.Line2D$Float.y2:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.y2:F
5: aload 6
dup
getfield java.awt.geom.Line2D$Float.x1:F
fconst_1
fadd
putfield java.awt.geom.Line2D$Float.x1:F
6: aload 5
aload 0
getfield sun.font.Underline$IMGrayUnderline.stroke:Ljava/awt/BasicStroke;
aload 6
invokevirtual java.awt.BasicStroke.createStrokedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
iconst_0
invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
7: aload 5
areturn
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 8 0 this Lsun/font/Underline$IMGrayUnderline;
0 8 1 thickness F
0 8 2 x1 F
0 8 3 x2 F
0 8 4 y F
1 8 5 gp Ljava/awt/geom/GeneralPath;
2 8 6 line Ljava/awt/geom/Line2D$Float;
MethodParameters:
Name Flags
thickness
x1
x2
y
}
SourceFile: "Underline.java"
NestHost: sun.font.Underline
InnerClasses:
public Float = java.awt.geom.Line2D$Float of java.awt.geom.Line2D
private IMGrayUnderline = sun.font.Underline$IMGrayUnderline of sun.font.Underline