public abstract class javax.swing.text.GlyphView$GlyphPainter
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: javax.swing.text.GlyphView$GlyphPainter
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.text.GlyphView$GlyphPainter this
         0: .line 1147
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // javax.swing.text.GlyphView$GlyphPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphView$GlyphPainter;

  public abstract float getSpan(javax.swing.text.GlyphView, int, int, javax.swing.text.TabExpander, float);
    descriptor: (Ljavax/swing/text/GlyphView;IILjavax/swing/text/TabExpander;F)F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     
      p0    
      p1    
      e     
      x     

  public abstract float getHeight(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     

  public abstract float getAscent(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     

  public abstract float getDescent(javax.swing.text.GlyphView);
    descriptor: (Ljavax/swing/text/GlyphView;)F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     

  public abstract void paint(javax.swing.text.GlyphView, java.awt.Graphics, java.awt.Shape, int, int);
    descriptor: (Ljavax/swing/text/GlyphView;Ljava/awt/Graphics;Ljava/awt/Shape;II)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     
      g     
      a     
      p0    
      p1    

  public abstract java.awt.Shape modelToView(javax.swing.text.GlyphView, int, javax.swing.text.Position$Bias, java.awt.Shape);
    descriptor: (Ljavax/swing/text/GlyphView;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;)Ljava/awt/Shape;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      v     
      pos   
      bias  
      a     

  public abstract int viewToModel(javax.swing.text.GlyphView, float, float, java.awt.Shape, javax.swing.text.Position$Bias[]);
    descriptor: (Ljavax/swing/text/GlyphView;FFLjava/awt/Shape;[Ljavax/swing/text/Position$Bias;)I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      v           
      x           
      y           
      a           
      biasReturn  

  public abstract int getBoundedPosition(javax.swing.text.GlyphView, int, float, float);
    descriptor: (Ljavax/swing/text/GlyphView;IFF)I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      v     
      p0    
      x     
      len   

  public javax.swing.text.GlyphView$GlyphPainter getPainter(javax.swing.text.GlyphView, int, int);
    descriptor: (Ljavax/swing/text/GlyphView;II)Ljavax/swing/text/GlyphView$GlyphPainter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=4, args_size=4
        start local 0 // javax.swing.text.GlyphView$GlyphPainter this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int p0
        start local 3 // int p1
         0: .line 1237
            aload 0 /* this */
            areturn
        end local 3 // int p1
        end local 2 // int p0
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphView$GlyphPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/GlyphView$GlyphPainter;
            0    1     1     v  Ljavax/swing/text/GlyphView;
            0    1     2    p0  I
            0    1     3    p1  I
    MethodParameters:
      Name  Flags
      v     
      p0    
      p1    

  public int getNextVisualPositionFrom(javax.swing.text.GlyphView, int, javax.swing.text.Position$Bias, java.awt.Shape, int, javax.swing.text.Position$Bias[]);
    descriptor: (Ljavax/swing/text/GlyphView;ILjavax/swing/text/Position$Bias;Ljava/awt/Shape;I[Ljavax/swing/text/Position$Bias;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=13, args_size=7
        start local 0 // javax.swing.text.GlyphView$GlyphPainter this
        start local 1 // javax.swing.text.GlyphView v
        start local 2 // int pos
        start local 3 // javax.swing.text.Position$Bias b
        start local 4 // java.awt.Shape a
        start local 5 // int direction
        start local 6 // javax.swing.text.Position$Bias[] biasRet
         0: .line 1269
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getStartOffset:()I
            istore 7 /* startOffset */
        start local 7 // int startOffset
         1: .line 1270
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getEndOffset:()I
            istore 8 /* endOffset */
        start local 8 // int endOffset
         2: .line 1273
            iload 5 /* direction */
            tableswitch { // 1 - 7
                    1: 3
                    2: 42
                    3: 16
                    4: 42
                    5: 3
                    6: 42
                    7: 30
              default: 42
          }
         3: .line 1276
      StackMap locals: int int
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpeq 5
         4: .line 1280
            iconst_m1
            ireturn
         5: .line 1282
      StackMap locals:
      StackMap stack:
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getContainer:()Ljava/awt/Container;
            astore 9 /* container */
        start local 9 // java.awt.Container container
         6: .line 1284
            aload 9 /* container */
            instanceof javax.swing.text.JTextComponent
            ifeq 43
         7: .line 1285
            aload 9 /* container */
            checkcast javax.swing.text.JTextComponent
            invokevirtual javax.swing.text.JTextComponent.getCaret:()Ljavax/swing/text/Caret;
            astore 10 /* c */
        start local 10 // javax.swing.text.Caret c
         8: .line 1287
            aload 10 /* c */
            ifnull 9
            aload 10 /* c */
            invokeinterface javax.swing.text.Caret.getMagicCaretPosition:()Ljava/awt/Point;
            goto 10
      StackMap locals: java.awt.Container javax.swing.text.Caret
      StackMap stack:
         9: aconst_null
      StackMap locals:
      StackMap stack: java.awt.Point
        10: astore 11 /* magicPoint */
        start local 11 // java.awt.Point magicPoint
        11: .line 1289
            aload 11 /* magicPoint */
            ifnonnull 14
        12: .line 1290
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        13: .line 1291
            iload 7 /* startOffset */
            ireturn
        14: .line 1293
      StackMap locals: java.awt.Point
      StackMap stack:
            aload 1 /* v */
            aload 11 /* magicPoint */
            getfield java.awt.Point.x:I
            i2f
            fconst_0
            aload 4 /* a */
            aload 6 /* biasRet */
            invokevirtual javax.swing.text.GlyphView.viewToModel:(FFLjava/awt/Shape;[Ljavax/swing/text/Position$Bias;)I
            istore 12 /* value */
        start local 12 // int value
        15: .line 1294
            iload 12 /* value */
            ireturn
        end local 12 // int value
        end local 11 // java.awt.Point magicPoint
        end local 10 // javax.swing.text.Caret c
        end local 9 // java.awt.Container container
        16: .line 1298
      StackMap locals:
      StackMap stack:
            iload 7 /* startOffset */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getLength:()I
            if_icmpne 21
        17: .line 1299
            iload 2 /* pos */
            iconst_m1
            if_icmpne 20
        18: .line 1300
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        19: .line 1301
            iload 7 /* startOffset */
            ireturn
        20: .line 1305
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        21: .line 1307
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 24
        22: .line 1308
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        23: .line 1309
            iload 7 /* startOffset */
            ireturn
        24: .line 1311
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 8 /* endOffset */
            if_icmpne 26
        25: .line 1312
            iconst_m1
            ireturn
        26: .line 1314
      StackMap locals:
      StackMap stack:
            iinc 2 /* pos */ 1
            iload 2 /* pos */
            iload 8 /* endOffset */
            if_icmpne 28
        27: .line 1317
            iconst_m1
            ireturn
        28: .line 1320
      StackMap locals:
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        29: .line 1322
            iload 2 /* pos */
            ireturn
        30: .line 1324
      StackMap locals:
      StackMap stack:
            iload 7 /* startOffset */
            aload 1 /* v */
            invokevirtual javax.swing.text.GlyphView.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getLength:()I
            if_icmpne 35
        31: .line 1325
            iload 2 /* pos */
            iconst_m1
            if_icmpne 34
        32: .line 1326
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        33: .line 1327
            iload 7 /* startOffset */
            ireturn
        34: .line 1331
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        35: .line 1333
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iconst_m1
            if_icmpne 38
        36: .line 1336
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        37: .line 1337
            iload 8 /* endOffset */
            iconst_1
            isub
            ireturn
        38: .line 1339
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            iload 7 /* startOffset */
            if_icmpne 40
        39: .line 1340
            iconst_m1
            ireturn
        40: .line 1342
      StackMap locals:
      StackMap stack:
            aload 6 /* biasRet */
            iconst_0
            getstatic javax.swing.text.Position$Bias.Forward:Ljavax/swing/text/Position$Bias;
            aastore
        41: .line 1343
            iload 2 /* pos */
            iconst_1
            isub
            ireturn
        42: .line 1345
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad direction: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* direction */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        43: .line 1347
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            ireturn
        end local 8 // int endOffset
        end local 7 // int startOffset
        end local 6 // javax.swing.text.Position$Bias[] biasRet
        end local 5 // int direction
        end local 4 // java.awt.Shape a
        end local 3 // javax.swing.text.Position$Bias b
        end local 2 // int pos
        end local 1 // javax.swing.text.GlyphView v
        end local 0 // javax.swing.text.GlyphView$GlyphPainter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   44     0         this  Ljavax/swing/text/GlyphView$GlyphPainter;
            0   44     1            v  Ljavax/swing/text/GlyphView;
            0   44     2          pos  I
            0   44     3            b  Ljavax/swing/text/Position$Bias;
            0   44     4            a  Ljava/awt/Shape;
            0   44     5    direction  I
            0   44     6      biasRet  [Ljavax/swing/text/Position$Bias;
            1   44     7  startOffset  I
            2   44     8    endOffset  I
            6   16     9    container  Ljava/awt/Container;
            8   16    10            c  Ljavax/swing/text/Caret;
           11   16    11   magicPoint  Ljava/awt/Point;
           15   16    12        value  I
    Exceptions:
      throws javax.swing.text.BadLocationException
    MethodParameters:
           Name  Flags
      v          
      pos        
      b          
      a          
      direction  
      biasRet    
}
SourceFile: "GlyphView.java"
NestHost: javax.swing.text.GlyphView
InnerClasses:
  public abstract GlyphPainter = javax.swing.text.GlyphView$GlyphPainter of javax.swing.text.GlyphView
  public final Bias = javax.swing.text.Position$Bias of javax.swing.text.Position