public class org.eclipse.jgit.dircache.DirCacheBuilder extends org.eclipse.jgit.dircache.BaseDirCacheEditor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jgit.dircache.DirCacheBuilder
  super_class: org.eclipse.jgit.dircache.BaseDirCacheEditor
{
  private boolean sorted;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  protected void <init>(org.eclipse.jgit.dircache.DirCache, int);
    descriptor: (Lorg/eclipse/jgit/dircache/DirCache;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
        start local 1 // org.eclipse.jgit.dircache.DirCache dc
        start local 2 // int ecnt
         0: .line 54
            aload 0 /* this */
            aload 1 /* dc */
            iload 2 /* ecnt */
            invokespecial org.eclipse.jgit.dircache.BaseDirCacheEditor.<init>:(Lorg/eclipse/jgit/dircache/DirCache;I)V
         1: .line 55
            return
        end local 2 // int ecnt
        end local 1 // org.eclipse.jgit.dircache.DirCache dc
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            0    2     1    dc  Lorg/eclipse/jgit/dircache/DirCache;
            0    2     2  ecnt  I
    MethodParameters:
      Name  Flags
      dc    
      ecnt  

  public void add(org.eclipse.jgit.dircache.DirCacheEntry);
    descriptor: (Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
        start local 1 // org.eclipse.jgit.dircache.DirCacheEntry newEntry
         0: .line 73
            aload 1 /* newEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getRawMode:()I
            ifne 5
         1: .line 74
            new java.lang.IllegalArgumentException
            dup
         2: .line 75
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.fileModeNotSetForPath:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         3: .line 76
            aload 1 /* newEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getPathString:()Ljava/lang/String;
            aastore
         4: .line 74
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 77
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* newEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.beforeAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
         6: .line 78
            aload 0 /* this */
            aload 1 /* newEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.fastAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
         7: .line 79
            return
        end local 1 // org.eclipse.jgit.dircache.DirCacheEntry newEntry
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            0    8     1  newEntry  Lorg/eclipse/jgit/dircache/DirCacheEntry;
    MethodParameters:
          Name  Flags
      newEntry  

  public void keep(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
        start local 1 // int pos
        start local 2 // int cnt
         0: .line 102
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.cache:Lorg/eclipse/jgit/dircache/DirCache;
            iload 1 /* pos */
            invokevirtual org.eclipse.jgit.dircache.DirCache.getEntry:(I)Lorg/eclipse/jgit/dircache/DirCacheEntry;
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.beforeAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
         1: .line 103
            aload 0 /* this */
            iload 1 /* pos */
            iload 2 /* cnt */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.fastKeep:(II)V
         2: .line 104
            return
        end local 2 // int cnt
        end local 1 // int pos
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            0    3     1   pos  I
            0    3     2   cnt  I
    MethodParameters:
      Name  Flags
      pos   
      cnt   

  public void addTree(byte[], int, org.eclipse.jgit.lib.ObjectReader, org.eclipse.jgit.lib.AnyObjectId);
    descriptor: ([BILorg/eclipse/jgit/lib/ObjectReader;Lorg/eclipse/jgit/lib/AnyObjectId;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
        start local 1 // byte[] pathPrefix
        start local 2 // int stage
        start local 3 // org.eclipse.jgit.lib.ObjectReader reader
        start local 4 // org.eclipse.jgit.lib.AnyObjectId tree
         0: .line 137
            aload 1 /* pathPrefix */
            aload 3 /* reader */
            aload 4 /* tree */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.createTreeParser:([BLorg/eclipse/jgit/lib/ObjectReader;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 5 /* p */
        start local 5 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
         1: .line 138
            goto 10
         2: .line 139
      StackMap locals: org.eclipse.jgit.treewalk.CanonicalTreeParser
      StackMap stack:
            aload 5 /* p */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.isTree:(Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Z
            ifeq 5
         3: .line 140
            aload 5 /* p */
            aload 3 /* reader */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.enterTree:(Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;Lorg/eclipse/jgit/lib/ObjectReader;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 5 /* p */
         4: .line 141
            goto 10
         5: .line 144
      StackMap locals:
      StackMap stack:
            iload 2 /* stage */
            aload 5 /* p */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.toEntry:(ILorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Lorg/eclipse/jgit/dircache/DirCacheEntry;
            astore 6 /* first */
        start local 6 // org.eclipse.jgit.dircache.DirCacheEntry first
         6: .line 145
            aload 0 /* this */
            aload 6 /* first */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.beforeAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
         7: .line 146
            aload 0 /* this */
            aload 6 /* first */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.fastAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
         8: .line 147
            aload 5 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.next:()Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 5 /* p */
         9: .line 148
            goto 17
        end local 6 // org.eclipse.jgit.dircache.DirCacheEntry first
        10: .line 138
      StackMap locals:
      StackMap stack:
            aload 5 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.eof:()Z
            ifeq 2
        11: .line 152
            goto 17
        12: .line 153
      StackMap locals:
      StackMap stack:
            aload 5 /* p */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.isTree:(Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Z
            ifeq 15
        13: .line 154
            aload 5 /* p */
            aload 3 /* reader */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.enterTree:(Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;Lorg/eclipse/jgit/lib/ObjectReader;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 5 /* p */
        14: .line 155
            goto 17
        15: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* stage */
            aload 5 /* p */
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.toEntry:(ILorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Lorg/eclipse/jgit/dircache/DirCacheEntry;
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.fastAdd:(Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
        16: .line 157
            aload 5 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.next:()Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 5 /* p */
        17: .line 152
      StackMap locals:
      StackMap stack:
            aload 5 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.eof:()Z
            ifeq 12
        18: .line 160
            return
        end local 5 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
        end local 4 // org.eclipse.jgit.lib.AnyObjectId tree
        end local 3 // org.eclipse.jgit.lib.ObjectReader reader
        end local 2 // int stage
        end local 1 // byte[] pathPrefix
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            0   19     1  pathPrefix  [B
            0   19     2       stage  I
            0   19     3      reader  Lorg/eclipse/jgit/lib/ObjectReader;
            0   19     4        tree  Lorg/eclipse/jgit/lib/AnyObjectId;
            1   19     5           p  Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            6   10     6       first  Lorg/eclipse/jgit/dircache/DirCacheEntry;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      pathPrefix  
      stage       
      reader      
      tree        

  private static org.eclipse.jgit.treewalk.CanonicalTreeParser createTreeParser(byte[], org.eclipse.jgit.lib.ObjectReader, org.eclipse.jgit.lib.AnyObjectId);
    descriptor: ([BLorg/eclipse/jgit/lib/ObjectReader;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // byte[] pathPrefix
        start local 1 // org.eclipse.jgit.lib.ObjectReader reader
        start local 2 // org.eclipse.jgit.lib.AnyObjectId tree
         0: .line 164
            new org.eclipse.jgit.treewalk.CanonicalTreeParser
            dup
            aload 0 /* pathPrefix */
            aload 1 /* reader */
            aload 2 /* tree */
            invokespecial org.eclipse.jgit.treewalk.CanonicalTreeParser.<init>:([BLorg/eclipse/jgit/lib/ObjectReader;Lorg/eclipse/jgit/lib/AnyObjectId;)V
            areturn
        end local 2 // org.eclipse.jgit.lib.AnyObjectId tree
        end local 1 // org.eclipse.jgit.lib.ObjectReader reader
        end local 0 // byte[] pathPrefix
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0  pathPrefix  [B
            0    1     1      reader  Lorg/eclipse/jgit/lib/ObjectReader;
            0    1     2        tree  Lorg/eclipse/jgit/lib/AnyObjectId;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      pathPrefix  
      reader      
      tree        

  private static boolean isTree(org.eclipse.jgit.treewalk.CanonicalTreeParser);
    descriptor: (Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
         0: .line 168
            aload 0 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.getEntryRawMode:()I
            ldc 61440
            iand
            sipush 16384
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     p  Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
    MethodParameters:
      Name  Flags
      p     

  private static org.eclipse.jgit.treewalk.CanonicalTreeParser enterTree(org.eclipse.jgit.treewalk.CanonicalTreeParser, org.eclipse.jgit.lib.ObjectReader);
    descriptor: (Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;Lorg/eclipse/jgit/lib/ObjectReader;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
        start local 1 // org.eclipse.jgit.lib.ObjectReader reader
         0: .line 173
            aload 0 /* p */
            aload 1 /* reader */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.createSubtreeIterator:(Lorg/eclipse/jgit/lib/ObjectReader;)Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            astore 0 /* p */
         1: .line 174
            aload 0 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.eof:()Z
            ifeq 2
            aload 0 /* p */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.next:()Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* p */
      StackMap locals:
      StackMap stack: org.eclipse.jgit.treewalk.CanonicalTreeParser
         3: areturn
        end local 1 // org.eclipse.jgit.lib.ObjectReader reader
        end local 0 // org.eclipse.jgit.treewalk.CanonicalTreeParser p
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0       p  Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            0    4     1  reader  Lorg/eclipse/jgit/lib/ObjectReader;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      p       
      reader  

  private static org.eclipse.jgit.dircache.DirCacheEntry toEntry(int, org.eclipse.jgit.treewalk.CanonicalTreeParser);
    descriptor: (ILorg/eclipse/jgit/treewalk/CanonicalTreeParser;)Lorg/eclipse/jgit/dircache/DirCacheEntry;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // int stage
        start local 1 // org.eclipse.jgit.treewalk.CanonicalTreeParser i
         0: .line 178
            aload 1 /* i */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.getEntryPathBuffer:()[B
            astore 2 /* buf */
        start local 2 // byte[] buf
         1: .line 179
            aload 1 /* i */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.getEntryPathLength:()I
            istore 3 /* len */
        start local 3 // int len
         2: .line 180
            iload 3 /* len */
            newarray 8
            astore 4 /* path */
        start local 4 // byte[] path
         3: .line 181
            aload 2 /* buf */
            iconst_0
            aload 4 /* path */
            iconst_0
            iload 3 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 183
            new org.eclipse.jgit.dircache.DirCacheEntry
            dup
            aload 4 /* path */
            iload 0 /* stage */
            invokespecial org.eclipse.jgit.dircache.DirCacheEntry.<init>:([BI)V
            astore 5 /* e */
        start local 5 // org.eclipse.jgit.dircache.DirCacheEntry e
         5: .line 184
            aload 5 /* e */
            aload 1 /* i */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.getEntryRawMode:()I
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.setFileMode:(I)V
         6: .line 185
            aload 5 /* e */
            aload 1 /* i */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.idBuffer:()[B
            aload 1 /* i */
            invokevirtual org.eclipse.jgit.treewalk.CanonicalTreeParser.idOffset:()I
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.setObjectIdFromRaw:([BI)V
         7: .line 186
            aload 5 /* e */
            areturn
        end local 5 // org.eclipse.jgit.dircache.DirCacheEntry e
        end local 4 // byte[] path
        end local 3 // int len
        end local 2 // byte[] buf
        end local 1 // org.eclipse.jgit.treewalk.CanonicalTreeParser i
        end local 0 // int stage
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0  stage  I
            0    8     1      i  Lorg/eclipse/jgit/treewalk/CanonicalTreeParser;
            1    8     2    buf  [B
            2    8     3    len  I
            3    8     4   path  [B
            5    8     5      e  Lorg/eclipse/jgit/dircache/DirCacheEntry;
    MethodParameters:
       Name  Flags
      stage  
      i      

  public void finish();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
         0: .line 192
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.sorted:Z
            ifne 2
         1: .line 193
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.resort:()V
         2: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.dircache.DirCacheBuilder.replace:()V
         3: .line 195
            return
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;

  private void beforeAdd(org.eclipse.jgit.dircache.DirCacheEntry);
    descriptor: (Lorg/eclipse/jgit/dircache/DirCacheEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
        start local 1 // org.eclipse.jgit.dircache.DirCacheEntry newEntry
         0: .line 198
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.sorted:Z
            ifeq 15
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entryCnt:I
            ifle 15
         1: .line 199
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entries:[Lorg/eclipse/jgit/dircache/DirCacheEntry;
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entryCnt:I
            iconst_1
            isub
            aaload
            astore 2 /* lastEntry */
        start local 2 // org.eclipse.jgit.dircache.DirCacheEntry lastEntry
         2: .line 200
            aload 2 /* lastEntry */
            aload 1 /* newEntry */
            invokestatic org.eclipse.jgit.dircache.DirCache.cmp:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Lorg/eclipse/jgit/dircache/DirCacheEntry;)I
            istore 3 /* cr */
        start local 3 // int cr
         3: .line 201
            iload 3 /* cr */
            ifle 6
         4: .line 206
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jgit.dircache.DirCacheBuilder.sorted:Z
         5: .line 207
            goto 15
      StackMap locals: org.eclipse.jgit.dircache.DirCacheEntry int
      StackMap stack:
         6: iload 3 /* cr */
            ifne 15
         7: .line 211
            aload 2 /* lastEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getStage:()I
            istore 4 /* peStage */
        start local 4 // int peStage
         8: .line 212
            aload 1 /* newEntry */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getStage:()I
            istore 5 /* dceStage */
        start local 5 // int dceStage
         9: .line 213
            iload 4 /* peStage */
            iload 5 /* dceStage */
            if_icmpne 11
        10: .line 214
            aload 1 /* newEntry */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.duplicateStagesNotAllowed:Ljava/lang/String;
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.bad:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
        11: .line 215
      StackMap locals: int int
      StackMap stack:
            iload 4 /* peStage */
            ifeq 12
            iload 5 /* dceStage */
            ifne 13
        12: .line 216
      StackMap locals:
      StackMap stack:
            aload 1 /* newEntry */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.mixedStagesNotAllowed:Ljava/lang/String;
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.bad:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
        13: .line 217
      StackMap locals:
      StackMap stack:
            iload 4 /* peStage */
            iload 5 /* dceStage */
            if_icmple 15
        14: .line 218
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jgit.dircache.DirCacheBuilder.sorted:Z
        end local 5 // int dceStage
        end local 4 // int peStage
        end local 3 // int cr
        end local 2 // org.eclipse.jgit.dircache.DirCacheEntry lastEntry
        15: .line 221
      StackMap locals: org.eclipse.jgit.dircache.DirCacheBuilder org.eclipse.jgit.dircache.DirCacheEntry
      StackMap stack:
            return
        end local 1 // org.eclipse.jgit.dircache.DirCacheEntry newEntry
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            0   16     1   newEntry  Lorg/eclipse/jgit/dircache/DirCacheEntry;
            2   15     2  lastEntry  Lorg/eclipse/jgit/dircache/DirCacheEntry;
            3   15     3         cr  I
            8   15     4    peStage  I
            9   15     5   dceStage  I
    MethodParameters:
          Name  Flags
      newEntry  

  private void resort();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
         0: .line 224
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entries:[Lorg/eclipse/jgit/dircache/DirCacheEntry;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entryCnt:I
            getstatic org.eclipse.jgit.dircache.DirCache.ENT_CMP:Ljava/util/Comparator;
            invokestatic java.util.Arrays.sort:([Ljava/lang/Object;IILjava/util/Comparator;)V
         1: .line 226
            iconst_1
            istore 1 /* entryIdx */
        start local 1 // int entryIdx
         2: goto 14
         3: .line 227
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entries:[Lorg/eclipse/jgit/dircache/DirCacheEntry;
            iload 1 /* entryIdx */
            iconst_1
            isub
            aaload
            astore 2 /* pe */
        start local 2 // org.eclipse.jgit.dircache.DirCacheEntry pe
         4: .line 228
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entries:[Lorg/eclipse/jgit/dircache/DirCacheEntry;
            iload 1 /* entryIdx */
            aaload
            astore 3 /* ce */
        start local 3 // org.eclipse.jgit.dircache.DirCacheEntry ce
         5: .line 229
            aload 2 /* pe */
            aload 3 /* ce */
            invokestatic org.eclipse.jgit.dircache.DirCache.cmp:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Lorg/eclipse/jgit/dircache/DirCacheEntry;)I
            istore 4 /* cr */
        start local 4 // int cr
         6: .line 230
            iload 4 /* cr */
            ifne 13
         7: .line 234
            aload 2 /* pe */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getStage:()I
            istore 5 /* peStage */
        start local 5 // int peStage
         8: .line 235
            aload 3 /* ce */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getStage:()I
            istore 6 /* ceStage */
        start local 6 // int ceStage
         9: .line 236
            iload 5 /* peStage */
            iload 6 /* ceStage */
            if_icmpne 11
        10: .line 237
            aload 3 /* ce */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.duplicateStagesNotAllowed:Ljava/lang/String;
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.bad:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
        11: .line 238
      StackMap locals: org.eclipse.jgit.dircache.DirCacheBuilder int org.eclipse.jgit.dircache.DirCacheEntry org.eclipse.jgit.dircache.DirCacheEntry int int int
      StackMap stack:
            iload 5 /* peStage */
            ifeq 12
            iload 6 /* ceStage */
            ifne 13
        12: .line 239
      StackMap locals:
      StackMap stack:
            aload 3 /* ce */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.mixedStagesNotAllowed:Ljava/lang/String;
            invokestatic org.eclipse.jgit.dircache.DirCacheBuilder.bad:(Lorg/eclipse/jgit/dircache/DirCacheEntry;Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
        end local 6 // int ceStage
        end local 5 // int peStage
        end local 4 // int cr
        end local 3 // org.eclipse.jgit.dircache.DirCacheEntry ce
        end local 2 // org.eclipse.jgit.dircache.DirCacheEntry pe
        13: .line 226
      StackMap locals: org.eclipse.jgit.dircache.DirCacheBuilder int
      StackMap stack:
            iinc 1 /* entryIdx */ 1
      StackMap locals:
      StackMap stack:
        14: iload 1 /* entryIdx */
            aload 0 /* this */
            getfield org.eclipse.jgit.dircache.DirCacheBuilder.entryCnt:I
            if_icmplt 3
        end local 1 // int entryIdx
        15: .line 243
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jgit.dircache.DirCacheBuilder.sorted:Z
        16: .line 244
            return
        end local 0 // org.eclipse.jgit.dircache.DirCacheBuilder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lorg/eclipse/jgit/dircache/DirCacheBuilder;
            2   15     1  entryIdx  I
            4   13     2        pe  Lorg/eclipse/jgit/dircache/DirCacheEntry;
            5   13     3        ce  Lorg/eclipse/jgit/dircache/DirCacheEntry;
            6   13     4        cr  I
            8   13     5   peStage  I
            9   13     6   ceStage  I

  private static java.lang.IllegalStateException bad(org.eclipse.jgit.dircache.DirCacheEntry, java.lang.String);
    descriptor: (Lorg/eclipse/jgit/dircache/DirCacheEntry;Ljava/lang/String;)Ljava/lang/IllegalStateException;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.dircache.DirCacheEntry a
        start local 1 // java.lang.String msg
         0: .line 247
            new java.lang.IllegalStateException
            dup
         1: .line 248
            ldc "%s: %d %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
         2: .line 249
            aload 1 /* msg */
            aastore
            dup
            iconst_1
            aload 0 /* a */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getStage:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* a */
            invokevirtual org.eclipse.jgit.dircache.DirCacheEntry.getPathString:()Ljava/lang/String;
            aastore
         3: .line 247
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String msg
        end local 0 // org.eclipse.jgit.dircache.DirCacheEntry a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     a  Lorg/eclipse/jgit/dircache/DirCacheEntry;
            0    4     1   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      a     
      msg   

  public boolean commit();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial org.eclipse.jgit.dircache.BaseDirCacheEditor.commit:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.io.IOException

  public org.eclipse.jgit.dircache.DirCache getDirCache();
    descriptor: ()Lorg/eclipse/jgit/dircache/DirCache;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial org.eclipse.jgit.dircache.BaseDirCacheEditor.getDirCache:()Lorg/eclipse/jgit/dircache/DirCache;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "DirCacheBuilder.java"