public abstract class javax.swing.tree.AbstractLayoutCache implements javax.swing.tree.RowMapper
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: javax.swing.tree.AbstractLayoutCache
  super_class: java.lang.Object
{
  protected javax.swing.tree.AbstractLayoutCache$NodeDimensions nodeDimensions;
    descriptor: Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
    flags: (0x0004) ACC_PROTECTED

  protected javax.swing.tree.TreeModel treeModel;
    descriptor: Ljavax/swing/tree/TreeModel;
    flags: (0x0004) ACC_PROTECTED

  protected javax.swing.tree.TreeSelectionModel treeSelectionModel;
    descriptor: Ljavax/swing/tree/TreeSelectionModel;
    flags: (0x0004) ACC_PROTECTED

  protected boolean rootVisible;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected int rowHeight;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public void setNodeDimensions(javax.swing.tree.AbstractLayoutCache$NodeDimensions);
    descriptor: (Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // javax.swing.tree.AbstractLayoutCache$NodeDimensions nd
         0: .line 77
            aload 0 /* this */
            aload 1 /* nd */
            putfield javax.swing.tree.AbstractLayoutCache.nodeDimensions:Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
         1: .line 78
            return
        end local 1 // javax.swing.tree.AbstractLayoutCache$NodeDimensions nd
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/tree/AbstractLayoutCache;
            0    2     1    nd  Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
    MethodParameters:
      Name  Flags
      nd    

  public javax.swing.tree.AbstractLayoutCache$NodeDimensions getNodeDimensions();
    descriptor: ()Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 87
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.nodeDimensions:Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
            areturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public void setModel(javax.swing.tree.TreeModel);
    descriptor: (Ljavax/swing/tree/TreeModel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // javax.swing.tree.TreeModel newModel
         0: .line 97
            aload 0 /* this */
            aload 1 /* newModel */
            putfield javax.swing.tree.AbstractLayoutCache.treeModel:Ljavax/swing/tree/TreeModel;
         1: .line 98
            return
        end local 1 // javax.swing.tree.TreeModel newModel
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/swing/tree/AbstractLayoutCache;
            0    2     1  newModel  Ljavax/swing/tree/TreeModel;
    MethodParameters:
          Name  Flags
      newModel  

  public javax.swing.tree.TreeModel getModel();
    descriptor: ()Ljavax/swing/tree/TreeModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 106
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeModel:Ljavax/swing/tree/TreeModel;
            areturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public void setRootVisible(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // boolean rootVisible
         0: .line 121
            aload 0 /* this */
            iload 1 /* rootVisible */
            putfield javax.swing.tree.AbstractLayoutCache.rootVisible:Z
         1: .line 122
            return
        end local 1 // boolean rootVisible
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Ljavax/swing/tree/AbstractLayoutCache;
            0    2     1  rootVisible  Z
    MethodParameters:
             Name  Flags
      rootVisible  

  public boolean isRootVisible();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 131
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.rootVisible:Z
            ireturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public void setRowHeight(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // int rowHeight
         0: .line 145
            aload 0 /* this */
            iload 1 /* rowHeight */
            putfield javax.swing.tree.AbstractLayoutCache.rowHeight:I
         1: .line 146
            return
        end local 1 // int rowHeight
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljavax/swing/tree/AbstractLayoutCache;
            0    2     1  rowHeight  I
    MethodParameters:
           Name  Flags
      rowHeight  

  public int getRowHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 154
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.rowHeight:I
            ireturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public void setSelectionModel(javax.swing.tree.TreeSelectionModel);
    descriptor: (Ljavax/swing/tree/TreeSelectionModel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // javax.swing.tree.TreeSelectionModel newLSM
         0: .line 164
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            ifnull 2
         1: .line 165
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            aconst_null
            invokeinterface javax.swing.tree.TreeSelectionModel.setRowMapper:(Ljavax/swing/tree/RowMapper;)V
         2: .line 166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* newLSM */
            putfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
         3: .line 167
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            ifnull 5
         4: .line 168
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            aload 0 /* this */
            invokeinterface javax.swing.tree.TreeSelectionModel.setRowMapper:(Ljavax/swing/tree/RowMapper;)V
         5: .line 169
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.swing.tree.TreeSelectionModel newLSM
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljavax/swing/tree/AbstractLayoutCache;
            0    6     1  newLSM  Ljavax/swing/tree/TreeSelectionModel;
    MethodParameters:
        Name  Flags
      newLSM  

  public javax.swing.tree.TreeSelectionModel getSelectionModel();
    descriptor: ()Ljavax/swing/tree/TreeSelectionModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 177
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.treeSelectionModel:Ljavax/swing/tree/TreeSelectionModel;
            areturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/tree/AbstractLayoutCache;

  public int getPreferredHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 187
            aload 0 /* this */
            invokevirtual javax.swing.tree.AbstractLayoutCache.getRowCount:()I
            istore 1 /* rowCount */
        start local 1 // int rowCount
         1: .line 189
            iload 1 /* rowCount */
            ifle 7
         2: .line 190
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* rowCount */
            iconst_1
            isub
            invokevirtual javax.swing.tree.AbstractLayoutCache.getPathForRow:(I)Ljavax/swing/tree/TreePath;
         3: .line 191
            aconst_null
         4: .line 190
            invokevirtual javax.swing.tree.AbstractLayoutCache.getBounds:(Ljavax/swing/tree/TreePath;Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 2 /* bounds */
        start local 2 // java.awt.Rectangle bounds
         5: .line 193
            aload 2 /* bounds */
            ifnull 7
         6: .line 194
            aload 2 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 2 /* bounds */
            getfield java.awt.Rectangle.height:I
            iadd
            ireturn
        end local 2 // java.awt.Rectangle bounds
         7: .line 196
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int rowCount
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljavax/swing/tree/AbstractLayoutCache;
            1    8     1  rowCount  I
            5    7     2    bounds  Ljava/awt/Rectangle;

  public int getPreferredWidth(java.awt.Rectangle);
    descriptor: (Ljava/awt/Rectangle;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // java.awt.Rectangle bounds
         0: .line 213
            aload 0 /* this */
            invokevirtual javax.swing.tree.AbstractLayoutCache.getRowCount:()I
            istore 2 /* rowCount */
        start local 2 // int rowCount
         1: .line 215
            iload 2 /* rowCount */
            ifle 28
         2: .line 220
            aload 1 /* bounds */
            ifnonnull 6
         3: .line 221
            aload 0 /* this */
            iconst_0
            invokevirtual javax.swing.tree.AbstractLayoutCache.getPathForRow:(I)Ljavax/swing/tree/TreePath;
            astore 3 /* firstPath */
        start local 3 // javax.swing.tree.TreePath firstPath
         4: .line 222
            ldc 2147483647
            istore 4 /* endY */
        start local 4 // int endY
         5: .line 223
            goto 8
        end local 4 // int endY
        end local 3 // javax.swing.tree.TreePath firstPath
         6: .line 225
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 1 /* bounds */
            getfield java.awt.Rectangle.y:I
            invokevirtual javax.swing.tree.AbstractLayoutCache.getPathClosestTo:(II)Ljavax/swing/tree/TreePath;
            astore 3 /* firstPath */
        start local 3 // javax.swing.tree.TreePath firstPath
         7: .line 226
            aload 1 /* bounds */
            getfield java.awt.Rectangle.height:I
            aload 1 /* bounds */
            getfield java.awt.Rectangle.y:I
            iadd
            istore 4 /* endY */
        start local 4 // int endY
         8: .line 229
      StackMap locals: javax.swing.tree.TreePath int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* firstPath */
            invokevirtual javax.swing.tree.AbstractLayoutCache.getVisiblePathsFrom:(Ljavax/swing/tree/TreePath;)Ljava/util/Enumeration;
            astore 5 /* paths */
        start local 5 // java.util.Enumeration paths
         9: .line 231
            aload 5 /* paths */
            ifnull 28
            aload 5 /* paths */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifeq 28
        10: .line 232
            aload 0 /* this */
            aload 5 /* paths */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast javax.swing.tree.TreePath
        11: .line 233
            aconst_null
        12: .line 232
            invokevirtual javax.swing.tree.AbstractLayoutCache.getBounds:(Ljavax/swing/tree/TreePath;Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 6 /* pBounds */
        start local 6 // java.awt.Rectangle pBounds
        13: .line 236
            aload 6 /* pBounds */
            ifnull 17
        14: .line 237
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.x:I
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.width:I
            iadd
            istore 7 /* width */
        start local 7 // int width
        15: .line 238
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.y:I
            iload 4 /* endY */
            if_icmplt 26
        16: .line 239
            iload 7 /* width */
            ireturn
        end local 7 // int width
        17: .line 243
      StackMap locals: java.util.Enumeration java.awt.Rectangle
      StackMap stack:
            iconst_0
            istore 7 /* width */
        start local 7 // int width
        18: .line 244
            goto 26
        19: .line 245
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* paths */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast javax.swing.tree.TreePath
        20: .line 246
            aload 6 /* pBounds */
        21: .line 245
            invokevirtual javax.swing.tree.AbstractLayoutCache.getBounds:(Ljavax/swing/tree/TreePath;Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 6 /* pBounds */
        22: .line 247
            aload 6 /* pBounds */
            ifnull 25
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.y:I
            iload 4 /* endY */
            if_icmpge 25
        23: .line 248
            iload 7 /* width */
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.x:I
            aload 6 /* pBounds */
            getfield java.awt.Rectangle.width:I
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 7 /* width */
        24: .line 249
            goto 26
        25: .line 251
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* pBounds */
        26: .line 244
      StackMap locals:
      StackMap stack:
            aload 6 /* pBounds */
            ifnull 27
            aload 5 /* paths */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 19
        27: .line 254
      StackMap locals:
      StackMap stack:
            iload 7 /* width */
            ireturn
        end local 7 // int width
        end local 6 // java.awt.Rectangle pBounds
        end local 5 // java.util.Enumeration paths
        end local 4 // int endY
        end local 3 // javax.swing.tree.TreePath firstPath
        28: .line 257
      StackMap locals: javax.swing.tree.AbstractLayoutCache java.awt.Rectangle int
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int rowCount
        end local 1 // java.awt.Rectangle bounds
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   29     0       this  Ljavax/swing/tree/AbstractLayoutCache;
            0   29     1     bounds  Ljava/awt/Rectangle;
            1   29     2   rowCount  I
            4    6     3  firstPath  Ljavax/swing/tree/TreePath;
            7   28     3  firstPath  Ljavax/swing/tree/TreePath;
            5    6     4       endY  I
            8   28     4       endY  I
            9   28     5      paths  Ljava/util/Enumeration;
           13   28     6    pBounds  Ljava/awt/Rectangle;
           15   17     7      width  I
           18   28     7      width  I
    MethodParameters:
        Name  Flags
      bounds  

  public abstract boolean isExpanded(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract java.awt.Rectangle getBounds(javax.swing.tree.TreePath, java.awt.Rectangle);
    descriptor: (Ljavax/swing/tree/TreePath;Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      path     
      placeIn  

  public abstract javax.swing.tree.TreePath getPathForRow(int);
    descriptor: (I)Ljavax/swing/tree/TreePath;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      row   

  public abstract int getRowForPath(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract javax.swing.tree.TreePath getPathClosestTo(int, int);
    descriptor: (II)Ljavax/swing/tree/TreePath;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      x     
      y     

  public abstract java.util.Enumeration<javax.swing.tree.TreePath> getVisiblePathsFrom(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)Ljava/util/Enumeration;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljavax/swing/tree/TreePath;)Ljava/util/Enumeration<Ljavax/swing/tree/TreePath;>;
    MethodParameters:
      Name  Flags
      path  

  public abstract int getVisibleChildCount(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract void setExpandedState(javax.swing.tree.TreePath, boolean);
    descriptor: (Ljavax/swing/tree/TreePath;Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      path        
      isExpanded  

  public abstract boolean getExpandedState(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract int getRowCount();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void invalidateSizes();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void invalidatePathBounds(javax.swing.tree.TreePath);
    descriptor: (Ljavax/swing/tree/TreePath;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract void treeNodesChanged(javax.swing.event.TreeModelEvent);
    descriptor: (Ljavax/swing/event/TreeModelEvent;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      e     

  public abstract void treeNodesInserted(javax.swing.event.TreeModelEvent);
    descriptor: (Ljavax/swing/event/TreeModelEvent;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      e     

  public abstract void treeNodesRemoved(javax.swing.event.TreeModelEvent);
    descriptor: (Ljavax/swing/event/TreeModelEvent;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      e     

  public abstract void treeStructureChanged(javax.swing.event.TreeModelEvent);
    descriptor: (Ljavax/swing/event/TreeModelEvent;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      e     

  public int[] getRowsForPaths(javax.swing.tree.TreePath[]);
    descriptor: ([Ljavax/swing/tree/TreePath;)[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // javax.swing.tree.TreePath[] paths
         0: .line 453
            aload 1 /* paths */
            ifnonnull 2
         1: .line 454
            aconst_null
            areturn
         2: .line 456
      StackMap locals:
      StackMap stack:
            aload 1 /* paths */
            arraylength
            istore 2 /* numPaths */
        start local 2 // int numPaths
         3: .line 457
            iload 2 /* numPaths */
            newarray 10
            astore 3 /* rows */
        start local 3 // int[] rows
         4: .line 459
            iconst_0
            istore 4 /* counter */
        start local 4 // int counter
         5: goto 8
         6: .line 460
      StackMap locals: int int[] int
      StackMap stack:
            aload 3 /* rows */
            iload 4 /* counter */
            aload 0 /* this */
            aload 1 /* paths */
            iload 4 /* counter */
            aaload
            invokevirtual javax.swing.tree.AbstractLayoutCache.getRowForPath:(Ljavax/swing/tree/TreePath;)I
            iastore
         7: .line 459
            iinc 4 /* counter */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* counter */
            iload 2 /* numPaths */
            if_icmplt 6
        end local 4 // int counter
         9: .line 461
            aload 3 /* rows */
            areturn
        end local 3 // int[] rows
        end local 2 // int numPaths
        end local 1 // javax.swing.tree.TreePath[] paths
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Ljavax/swing/tree/AbstractLayoutCache;
            0   10     1     paths  [Ljavax/swing/tree/TreePath;
            3   10     2  numPaths  I
            4   10     3      rows  [I
            5    9     4   counter  I
    MethodParameters:
       Name  Flags
      paths  

  protected java.awt.Rectangle getNodeDimensions(java.lang.Object, int, int, boolean, java.awt.Rectangle);
    descriptor: (Ljava/lang/Object;IIZLjava/awt/Rectangle;)Ljava/awt/Rectangle;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // javax.swing.tree.AbstractLayoutCache this
        start local 1 // java.lang.Object value
        start local 2 // int row
        start local 3 // int depth
        start local 4 // boolean expanded
        start local 5 // java.awt.Rectangle placeIn
         0: .line 489
            aload 0 /* this */
            invokevirtual javax.swing.tree.AbstractLayoutCache.getNodeDimensions:()Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
            astore 6 /* nd */
        start local 6 // javax.swing.tree.AbstractLayoutCache$NodeDimensions nd
         1: .line 491
            aload 6 /* nd */
            ifnull 3
         2: .line 492
            aload 6 /* nd */
            aload 1 /* value */
            iload 2 /* row */
            iload 3 /* depth */
            iload 4 /* expanded */
            aload 5 /* placeIn */
            invokevirtual javax.swing.tree.AbstractLayoutCache$NodeDimensions.getNodeDimensions:(Ljava/lang/Object;IIZLjava/awt/Rectangle;)Ljava/awt/Rectangle;
            areturn
         3: .line 494
      StackMap locals: javax.swing.tree.AbstractLayoutCache$NodeDimensions
      StackMap stack:
            aconst_null
            areturn
        end local 6 // javax.swing.tree.AbstractLayoutCache$NodeDimensions nd
        end local 5 // java.awt.Rectangle placeIn
        end local 4 // boolean expanded
        end local 3 // int depth
        end local 2 // int row
        end local 1 // java.lang.Object value
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljavax/swing/tree/AbstractLayoutCache;
            0    4     1     value  Ljava/lang/Object;
            0    4     2       row  I
            0    4     3     depth  I
            0    4     4  expanded  Z
            0    4     5   placeIn  Ljava/awt/Rectangle;
            1    4     6        nd  Ljavax/swing/tree/AbstractLayoutCache$NodeDimensions;
    MethodParameters:
          Name  Flags
      value     
      row       
      depth     
      expanded  
      placeIn   

  protected boolean isFixedRowHeight();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.tree.AbstractLayoutCache this
         0: .line 501
            aload 0 /* this */
            getfield javax.swing.tree.AbstractLayoutCache.rowHeight:I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // javax.swing.tree.AbstractLayoutCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/tree/AbstractLayoutCache;
}
SourceFile: "AbstractLayoutCache.java"
NestMembers:
  javax.swing.tree.AbstractLayoutCache$NodeDimensions
InnerClasses:
  public abstract NodeDimensions = javax.swing.tree.AbstractLayoutCache$NodeDimensions of javax.swing.tree.AbstractLayoutCache