public class org.eclipse.jgit.api.DescribeCommand extends org.eclipse.jgit.api.GitCommand<java.lang.String>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jgit.api.DescribeCommand
  super_class: org.eclipse.jgit.api.GitCommand
{
  private final org.eclipse.jgit.revwalk.RevWalk w;
    descriptor: Lorg/eclipse/jgit/revwalk/RevWalk;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.eclipse.jgit.revwalk.RevCommit target;
    descriptor: Lorg/eclipse/jgit/revwalk/RevCommit;
    flags: (0x0002) ACC_PRIVATE

  private int maxCandidates;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean longDesc;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<org.eclipse.jgit.fnmatch.FileNameMatcher> matchers;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/eclipse/jgit/fnmatch/FileNameMatcher;>;

  private boolean useAll;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean useTags;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean always;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Comparator<org.eclipse.jgit.lib.Ref> TAG_TIE_BREAKER;
    descriptor: Ljava/util/Comparator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Comparator<Lorg/eclipse/jgit/lib/Ref;>;

  protected void <init>(org.eclipse.jgit.lib.Repository);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // org.eclipse.jgit.lib.Repository repo
         0: .line 98
            aload 0 /* this */
            aload 1 /* repo */
            invokespecial org.eclipse.jgit.api.GitCommand.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
         1: .line 64
            aload 0 /* this */
            bipush 10
            putfield org.eclipse.jgit.api.DescribeCommand.maxCandidates:I
         2: .line 74
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.eclipse.jgit.api.DescribeCommand.matchers:Ljava/util/List;
         3: .line 238
            aload 0 /* this */
            new org.eclipse.jgit.api.DescribeCommand$1
            dup
            aload 0 /* this */
            invokespecial org.eclipse.jgit.api.DescribeCommand$1.<init>:(Lorg/eclipse/jgit/api/DescribeCommand;)V
            putfield org.eclipse.jgit.api.DescribeCommand.TAG_TIE_BREAKER:Ljava/util/Comparator;
         4: .line 99
            aload 0 /* this */
            new org.eclipse.jgit.revwalk.RevWalk
            dup
            aload 1 /* repo */
            invokespecial org.eclipse.jgit.revwalk.RevWalk.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
            putfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
         5: .line 100
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            iconst_0
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.setRetainBody:(Z)V
         6: .line 101
            return
        end local 1 // org.eclipse.jgit.lib.Repository repo
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    7     1  repo  Lorg/eclipse/jgit/lib/Repository;
    MethodParameters:
      Name  Flags
      repo  

  public org.eclipse.jgit.api.DescribeCommand setTarget(org.eclipse.jgit.lib.ObjectId);
    descriptor: (Lorg/eclipse/jgit/lib/ObjectId;)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // org.eclipse.jgit.lib.ObjectId target
         0: .line 117
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            aload 1 /* target */
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.parseCommit:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/revwalk/RevCommit;
            putfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
         1: .line 118
            aload 0 /* this */
            areturn
        end local 1 // org.eclipse.jgit.lib.ObjectId target
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    2     1  target  Lorg/eclipse/jgit/lib/ObjectId;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      target  

  public org.eclipse.jgit.api.DescribeCommand setTarget(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // java.lang.String rev
         0: .line 138
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.repo:Lorg/eclipse/jgit/lib/Repository;
            aload 1 /* rev */
            invokevirtual org.eclipse.jgit.lib.Repository.resolve:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/ObjectId;
            astore 2 /* id */
        start local 2 // org.eclipse.jgit.lib.ObjectId id
         1: .line 139
            aload 2 /* id */
            ifnonnull 3
         2: .line 140
            new org.eclipse.jgit.api.errors.RefNotFoundException
            dup
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.refNotResolved:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* rev */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jgit.api.errors.RefNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 141
      StackMap locals: org.eclipse.jgit.lib.ObjectId
      StackMap stack:
            aload 0 /* this */
            aload 2 /* id */
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setTarget:(Lorg/eclipse/jgit/lib/ObjectId;)Lorg/eclipse/jgit/api/DescribeCommand;
            areturn
        end local 2 // org.eclipse.jgit.lib.ObjectId id
        end local 1 // java.lang.String rev
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    4     1   rev  Ljava/lang/String;
            1    4     2    id  Lorg/eclipse/jgit/lib/ObjectId;
    Exceptions:
      throws java.io.IOException, org.eclipse.jgit.api.errors.RefNotFoundException
    MethodParameters:
      Name  Flags
      rev   

  public org.eclipse.jgit.api.DescribeCommand setLong(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // boolean longDesc
         0: .line 157
            aload 0 /* this */
            iload 1 /* longDesc */
            putfield org.eclipse.jgit.api.DescribeCommand.longDesc:Z
         1: .line 158
            aload 0 /* this */
            areturn
        end local 1 // boolean longDesc
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    2     1  longDesc  Z
    MethodParameters:
          Name  Flags
      longDesc  

  public org.eclipse.jgit.api.DescribeCommand setAll(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // boolean all
         0: .line 173
            aload 0 /* this */
            iload 1 /* all */
            putfield org.eclipse.jgit.api.DescribeCommand.useAll:Z
         1: .line 174
            aload 0 /* this */
            areturn
        end local 1 // boolean all
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    2     1   all  Z
    MethodParameters:
      Name  Flags
      all   

  public org.eclipse.jgit.api.DescribeCommand setTags(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // boolean tags
         0: .line 189
            aload 0 /* this */
            iload 1 /* tags */
            putfield org.eclipse.jgit.api.DescribeCommand.useTags:Z
         1: .line 190
            aload 0 /* this */
            areturn
        end local 1 // boolean tags
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    2     1  tags  Z
    MethodParameters:
      Name  Flags
      tags  

  public org.eclipse.jgit.api.DescribeCommand setAlways(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // boolean always
         0: .line 204
            aload 0 /* this */
            iload 1 /* always */
            putfield org.eclipse.jgit.api.DescribeCommand.always:Z
         1: .line 205
            aload 0 /* this */
            areturn
        end local 1 // boolean always
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    2     1  always  Z
    MethodParameters:
        Name  Flags
      always  

  private java.lang.String longDescription(org.eclipse.jgit.lib.Ref, int, org.eclipse.jgit.lib.ObjectId);
    descriptor: (Lorg/eclipse/jgit/lib/Ref;ILorg/eclipse/jgit/lib/ObjectId;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // org.eclipse.jgit.lib.Ref tag
        start local 2 // int depth
        start local 3 // org.eclipse.jgit.lib.ObjectId tip
         0: .line 211
            ldc "%s-%d-g%s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* tag */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.api.DescribeCommand.formatRefName:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
         1: .line 212
            iload 2 /* depth */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.getObjectReader:()Lorg/eclipse/jgit/lib/ObjectReader;
            aload 3 /* tip */
            invokevirtual org.eclipse.jgit.lib.ObjectReader.abbreviate:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/AbbreviatedObjectId;
         2: .line 213
            invokevirtual org.eclipse.jgit.lib.AbbreviatedObjectId.name:()Ljava/lang/String;
            aastore
         3: .line 210
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 3 // org.eclipse.jgit.lib.ObjectId tip
        end local 2 // int depth
        end local 1 // org.eclipse.jgit.lib.Ref tag
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    4     1    tag  Lorg/eclipse/jgit/lib/Ref;
            0    4     2  depth  I
            0    4     3    tip  Lorg/eclipse/jgit/lib/ObjectId;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      tag    
      depth  
      tip    

  public org.eclipse.jgit.api.DescribeCommand setMatch(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Lorg/eclipse/jgit/api/DescribeCommand;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // java.lang.String[] patterns
         0: .line 232
            aload 1 /* patterns */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 4
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* p */
        start local 2 // java.lang.String p
         2: .line 233
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.matchers:Ljava/util/List;
            new org.eclipse.jgit.fnmatch.FileNameMatcher
            dup
            aload 2 /* p */
            aconst_null
            invokespecial org.eclipse.jgit.fnmatch.FileNameMatcher.<init>:(Ljava/lang/String;Ljava/lang/Character;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String p
         3: .line 232
            iinc 3 1
      StackMap locals:
      StackMap stack:
         4: iload 3
            iload 4
            if_icmplt 1
         5: .line 235
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String[] patterns
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    6     1  patterns  [Ljava/lang/String;
            2    3     2         p  Ljava/lang/String;
    Exceptions:
      throws org.eclipse.jgit.errors.InvalidPatternException
    MethodParameters:
          Name  Flags
      patterns  

  private java.util.Optional<org.eclipse.jgit.lib.Ref> getBestMatch(java.util.List<org.eclipse.jgit.lib.Ref>);
    descriptor: (Ljava/util/List;)Ljava/util/Optional;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // java.util.List tags
         0: .line 257
            aload 1 /* tags */
            ifnull 1
            aload 1 /* tags */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
         1: .line 258
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Optional.empty:()Ljava/util/Optional;
            areturn
         2: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.matchers:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 5
         3: .line 260
            aload 1 /* tags */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.TAG_TIE_BREAKER:Ljava/util/Comparator;
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
         4: .line 261
            aload 1 /* tags */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jgit.lib.Ref
            invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
            areturn
         5: .line 265
      StackMap locals:
      StackMap stack:
            invokestatic java.util.stream.Stream.empty:()Ljava/util/stream/Stream;
            astore 2 /* matchingTags */
        start local 2 // java.util.stream.Stream matchingTags
         6: .line 266
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.matchers:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 12
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.List java.util.stream.Stream top java.util.Iterator
      StackMap stack:
         7: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.fnmatch.FileNameMatcher
            astore 3 /* matcher */
        start local 3 // org.eclipse.jgit.fnmatch.FileNameMatcher matcher
         8: .line 267
            aload 1 /* tags */
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         9: .line 268
            aload 0 /* this */
            aload 3 /* matcher */
            invokedynamic test(Lorg/eclipse/jgit/api/DescribeCommand;Lorg/eclipse/jgit/fnmatch/FileNameMatcher;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jgit/api/DescribeCommand.lambda$0(Lorg/eclipse/jgit/fnmatch/FileNameMatcher;Lorg/eclipse/jgit/lib/Ref;)Z (7)
                  (Lorg/eclipse/jgit/lib/Ref;)Z
        10: .line 267
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            astore 5 /* m */
        start local 5 // java.util.stream.Stream m
        11: .line 274
            iconst_2
            anewarray java.util.stream.Stream
            dup
            iconst_0
            aload 2 /* matchingTags */
            aastore
            dup
            iconst_1
            aload 5 /* m */
            aastore
            invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/jgit/api/DescribeCommand.lambda$1(Ljava/util/stream/Stream;)Ljava/util/stream/Stream; (6)
                  (Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            astore 2 /* matchingTags */
        end local 5 // java.util.stream.Stream m
        end local 3 // org.eclipse.jgit.fnmatch.FileNameMatcher matcher
        12: .line 266
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        13: .line 276
            aload 2 /* matchingTags */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.TAG_TIE_BREAKER:Ljava/util/Comparator;
            invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.findFirst:()Ljava/util/Optional;
            areturn
        end local 2 // java.util.stream.Stream matchingTags
        end local 1 // java.util.List tags
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lorg/eclipse/jgit/api/DescribeCommand;
            0   14     1          tags  Ljava/util/List<Lorg/eclipse/jgit/lib/Ref;>;
            6   14     2  matchingTags  Ljava/util/stream/Stream<Lorg/eclipse/jgit/lib/Ref;>;
            8   12     3       matcher  Lorg/eclipse/jgit/fnmatch/FileNameMatcher;
           11   12     5             m  Ljava/util/stream/Stream<Lorg/eclipse/jgit/lib/Ref;>;
    Signature: (Ljava/util/List<Lorg/eclipse/jgit/lib/Ref;>;)Ljava/util/Optional<Lorg/eclipse/jgit/lib/Ref;>;
    MethodParameters:
      Name  Flags
      tags  

  private org.eclipse.jgit.lib.ObjectId getObjectIdFromRef(org.eclipse.jgit.lib.Ref);
    descriptor: (Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/ObjectId;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // org.eclipse.jgit.lib.Ref r
         0: .line 282
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.repo:Lorg/eclipse/jgit/lib/Repository;
            invokevirtual org.eclipse.jgit.lib.Repository.getRefDatabase:()Lorg/eclipse/jgit/lib/RefDatabase;
            aload 1 /* r */
            invokevirtual org.eclipse.jgit.lib.RefDatabase.peel:(Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/Ref;
            invokeinterface org.eclipse.jgit.lib.Ref.getPeeledObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            astore 2 /* key */
        start local 2 // org.eclipse.jgit.lib.ObjectId key
         1: .line 283
            aload 2 /* key */
            ifnonnull 3
         2: .line 284
            aload 1 /* r */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            astore 2 /* key */
         3: .line 286
      StackMap locals: org.eclipse.jgit.lib.ObjectId
      StackMap stack:
            aload 2 /* key */
         4: areturn
        end local 2 // org.eclipse.jgit.lib.ObjectId key
         5: .line 287
      StackMap locals: org.eclipse.jgit.api.DescribeCommand org.eclipse.jgit.lib.Ref
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
         6: .line 288
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
            aload 2 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            aload 2 /* e */
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
        end local 1 // org.eclipse.jgit.lib.Ref r
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    7     1     r  Lorg/eclipse/jgit/lib/Ref;
            1    5     2   key  Lorg/eclipse/jgit/lib/ObjectId;
            6    7     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     4       5  Class java.io.IOException
    Exceptions:
      throws org.eclipse.jgit.api.errors.JGitInternalException
    MethodParameters:
      Name  Flags
      r     

  public java.lang.String call();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=16, args_size=1
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
         0: .line 301
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.DescribeCommand.checkCallable:()V
         1: .line 302
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            ifnonnull 3
         2: .line 303
            aload 0 /* this */
            ldc "HEAD"
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setTarget:(Ljava/lang/String;)Lorg/eclipse/jgit/api/DescribeCommand;
            pop
         3: .line 306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.repo:Lorg/eclipse/jgit/lib/Repository;
            invokevirtual org.eclipse.jgit.lib.Repository.getRefDatabase:()Lorg/eclipse/jgit/lib/RefDatabase;
         4: .line 307
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.useAll:Z
            ifeq 5
            ldc "refs/"
            goto 6
      StackMap locals:
      StackMap stack: org.eclipse.jgit.lib.RefDatabase
         5: ldc "refs/tags/"
      StackMap locals: org.eclipse.jgit.api.DescribeCommand
      StackMap stack: org.eclipse.jgit.lib.RefDatabase java.lang.String
         6: invokevirtual org.eclipse.jgit.lib.RefDatabase.getRefsByPrefix:(Ljava/lang/String;)Ljava/util/List;
         7: .line 306
            astore 1 /* tagList */
        start local 1 // java.util.Collection tagList
         8: .line 308
            aload 1 /* tagList */
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         9: .line 309
            aload 0 /* this */
            invokedynamic test(Lorg/eclipse/jgit/api/DescribeCommand;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jgit/api/DescribeCommand.filterLightweightTags(Lorg/eclipse/jgit/lib/Ref;)Z (7)
                  (Lorg/eclipse/jgit/lib/Ref;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        10: .line 310
            aload 0 /* this */
            invokedynamic apply(Lorg/eclipse/jgit/api/DescribeCommand;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/eclipse/jgit/api/DescribeCommand.getObjectIdFromRef(Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/ObjectId; (7)
                  (Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/lib/ObjectId;
            invokestatic java.util.stream.Collectors.groupingBy:(Ljava/util/function/Function;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Map
        11: .line 308
            astore 2 /* tags */
        start local 2 // java.util.Map tags
        12: .line 313
            new org.eclipse.jgit.revwalk.RevFlagSet
            dup
            invokespecial org.eclipse.jgit.revwalk.RevFlagSet.<init>:()V
            astore 5 /* allFlags */
        start local 5 // org.eclipse.jgit.revwalk.RevFlagSet allFlags
        13: .line 354
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 6 /* candidates */
        start local 6 // java.util.List candidates
        14: .line 357
            aload 0 /* this */
            aload 2 /* tags */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            invokevirtual org.eclipse.jgit.api.DescribeCommand.getBestMatch:(Ljava/util/List;)Ljava/util/Optional;
            astore 7 /* bestMatch */
        start local 7 // java.util.Optional bestMatch
        15: .line 358
            aload 7 /* bestMatch */
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 22
        16: .line 359
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.longDesc:Z
            ifeq 17
            aload 0 /* this */
            aload 7 /* bestMatch */
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.lib.Ref
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            invokevirtual org.eclipse.jgit.api.DescribeCommand.longDescription:(Lorg/eclipse/jgit/lib/Ref;ILorg/eclipse/jgit/lib/ObjectId;)Ljava/lang/String;
            goto 18
        17: .line 360
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional
      StackMap stack:
            aload 0 /* this */
            aload 7 /* bestMatch */
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.lib.Ref
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.api.DescribeCommand.formatRefName:(Ljava/lang/String;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        18: astore 15
        19: .line 426
            aload 0 /* this */
            iconst_0
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setCallable:(Z)V
        20: .line 427
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
        21: .line 359
            aload 15
            areturn
        22: .line 363
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.markStart:(Lorg/eclipse/jgit/revwalk/RevCommit;)V
        23: .line 365
            iconst_0
            istore 8 /* seen */
        start local 8 // int seen
        24: .line 367
            goto 39
        start local 9 // org.eclipse.jgit.revwalk.RevCommit c
        25: .line 368
      StackMap locals: int org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            aload 9 /* c */
            aload 5 /* allFlags */
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.hasAny:(Lorg/eclipse/jgit/revwalk/RevFlagSet;)Z
            ifne 31
        26: .line 372
            aload 0 /* this */
            aload 2 /* tags */
            aload 9 /* c */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            invokevirtual org.eclipse.jgit.api.DescribeCommand.getBestMatch:(Ljava/util/List;)Ljava/util/Optional;
            astore 7 /* bestMatch */
        27: .line 373
            aload 7 /* bestMatch */
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 31
        28: .line 374
            new org.eclipse.jgit.api.DescribeCommand$1Candidate
            dup
            aload 0 /* this */
            aload 9 /* c */
            aload 7 /* bestMatch */
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.lib.Ref
            aload 5 /* allFlags */
            invokespecial org.eclipse.jgit.api.DescribeCommand$1Candidate.<init>:(Lorg/eclipse/jgit/api/DescribeCommand;Lorg/eclipse/jgit/revwalk/RevCommit;Lorg/eclipse/jgit/lib/Ref;Lorg/eclipse/jgit/revwalk/RevFlagSet;)V
            astore 10 /* cd */
        start local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        29: .line 375
            aload 6 /* candidates */
            aload 10 /* cd */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        30: .line 376
            aload 10 /* cd */
            iload 8 /* seen */
            putfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
        end local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        31: .line 382
      StackMap locals:
      StackMap stack:
            aload 6 /* candidates */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 35
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit top java.util.Iterator
      StackMap stack:
        32: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.api.DescribeCommand$1Candidate
            astore 10 /* cd */
        start local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        33: .line 383
            aload 10 /* cd */
            aload 9 /* c */
            invokevirtual org.eclipse.jgit.api.DescribeCommand$1Candidate.reaches:(Lorg/eclipse/jgit/revwalk/RevCommit;)Z
            ifne 35
        34: .line 384
            aload 10 /* cd */
            dup
            getfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
            iconst_1
            iadd
            putfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
        end local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        35: .line 382
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 32
        36: .line 390
            aload 6 /* candidates */
            invokeinterface java.util.List.size:()I
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.maxCandidates:I
            if_icmplt 38
        37: .line 391
            goto 54
        38: .line 396
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            iinc 8 /* seen */ 1
        end local 9 // org.eclipse.jgit.revwalk.RevCommit c
        39: .line 367
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.next:()Lorg/eclipse/jgit/revwalk/RevCommit;
            dup
            astore 9 /* c */
        start local 9 // org.eclipse.jgit.revwalk.RevCommit c
        40: ifnonnull 25
        41: .line 401
            goto 54
        42: .line 402
      StackMap locals: org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            aload 9 /* c */
            aload 5 /* allFlags */
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.hasAll:(Lorg/eclipse/jgit/revwalk/RevFlagSet;)Z
            ifeq 49
        43: .line 404
            aload 9 /* c */
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.getParents:()[Lorg/eclipse/jgit/revwalk/RevCommit;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 47
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit top int int org.eclipse.jgit.revwalk.RevCommit[]
      StackMap stack:
        44: aload 13
            iload 11
            aaload
            astore 10 /* p */
        start local 10 // org.eclipse.jgit.revwalk.RevCommit p
        45: .line 405
            aload 10 /* p */
            getstatic org.eclipse.jgit.revwalk.RevFlag.SEEN:Lorg/eclipse/jgit/revwalk/RevFlag;
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.add:(Lorg/eclipse/jgit/revwalk/RevFlag;)V
        end local 10 // org.eclipse.jgit.revwalk.RevCommit p
        46: .line 404
            iinc 11 1
      StackMap locals:
      StackMap stack:
        47: iload 11
            iload 12
            if_icmplt 44
        48: .line 406
            goto 54
        49: .line 407
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            aload 6 /* candidates */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 53
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit top java.util.Iterator
      StackMap stack:
        50: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.api.DescribeCommand$1Candidate
            astore 10 /* cd */
        start local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        51: .line 408
            aload 10 /* cd */
            aload 9 /* c */
            invokevirtual org.eclipse.jgit.api.DescribeCommand$1Candidate.reaches:(Lorg/eclipse/jgit/revwalk/RevCommit;)Z
            ifne 53
        52: .line 409
            aload 10 /* cd */
            dup
            getfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
            iconst_1
            iadd
            putfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
        end local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate cd
        53: .line 407
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 50
        54: .line 401
      StackMap locals: org.eclipse.jgit.api.DescribeCommand java.util.Collection java.util.Map top top org.eclipse.jgit.revwalk.RevFlagSet java.util.List java.util.Optional int org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.next:()Lorg/eclipse/jgit/revwalk/RevCommit;
            dup
            astore 9 /* c */
            ifnonnull 42
        55: .line 415
            aload 6 /* candidates */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 62
        56: .line 416
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.always:Z
            ifeq 57
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.getObjectReader:()Lorg/eclipse/jgit/lib/ObjectReader;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            invokevirtual org.eclipse.jgit.lib.ObjectReader.abbreviate:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/AbbreviatedObjectId;
            invokevirtual org.eclipse.jgit.lib.AbbreviatedObjectId.name:()Ljava/lang/String;
            goto 58
      StackMap locals:
      StackMap stack:
        57: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
        58: astore 15
        59: .line 426
            aload 0 /* this */
            iconst_0
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setCallable:(Z)V
        60: .line 427
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
        61: .line 416
            aload 15
            areturn
        62: .line 419
      StackMap locals:
      StackMap stack:
            aload 6 /* candidates */
        63: .line 420
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/eclipse/jgit/api/DescribeCommand.lambda$4(Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;)I (6)
                  (Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;)I
        64: .line 419
            invokestatic java.util.Collections.min:(Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object;
            checkcast org.eclipse.jgit.api.DescribeCommand$1Candidate
            astore 10 /* best */
        start local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate best
        65: .line 422
            aload 10 /* best */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.target:Lorg/eclipse/jgit/revwalk/RevCommit;
            invokevirtual org.eclipse.jgit.api.DescribeCommand$1Candidate.describe:(Lorg/eclipse/jgit/lib/ObjectId;)Ljava/lang/String;
            astore 15
        66: .line 426
            aload 0 /* this */
            iconst_0
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setCallable:(Z)V
        67: .line 427
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
        68: .line 422
            aload 15
            areturn
        end local 10 // org.eclipse.jgit.api.DescribeCommand$1Candidate best
        end local 9 // org.eclipse.jgit.revwalk.RevCommit c
        end local 8 // int seen
        end local 7 // java.util.Optional bestMatch
        end local 6 // java.util.List candidates
        end local 5 // org.eclipse.jgit.revwalk.RevFlagSet allFlags
        end local 2 // java.util.Map tags
        end local 1 // java.util.Collection tagList
        69: .line 423
      StackMap locals: org.eclipse.jgit.api.DescribeCommand
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
        70: .line 424
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
            aload 1 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            aload 1 /* e */
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException e
        71: .line 425
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 14
        72: .line 426
            aload 0 /* this */
            iconst_0
            invokevirtual org.eclipse.jgit.api.DescribeCommand.setCallable:(Z)V
        73: .line 427
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
        74: .line 428
            aload 14
            athrow
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   75     0        this  Lorg/eclipse/jgit/api/DescribeCommand;
            8   69     1     tagList  Ljava/util/Collection<Lorg/eclipse/jgit/lib/Ref;>;
           12   69     2        tags  Ljava/util/Map<Lorg/eclipse/jgit/lib/ObjectId;Ljava/util/List<Lorg/eclipse/jgit/lib/Ref;>;>;
           13   69     5    allFlags  Lorg/eclipse/jgit/revwalk/RevFlagSet;
           14   69     6  candidates  Ljava/util/List<Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;>;
           15   69     7   bestMatch  Ljava/util/Optional<Lorg/eclipse/jgit/lib/Ref;>;
           24   69     8        seen  I
           25   39     9           c  Lorg/eclipse/jgit/revwalk/RevCommit;
           40   69     9           c  Lorg/eclipse/jgit/revwalk/RevCommit;
           29   31    10          cd  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
           33   35    10          cd  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
           45   46    10           p  Lorg/eclipse/jgit/revwalk/RevCommit;
           51   53    10          cd  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
           65   69    10        best  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
           70   71     1           e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    19      69  Class java.io.IOException
          22    59      69  Class java.io.IOException
          62    66      69  Class java.io.IOException
           0    19      71  any
          22    59      71  any
          62    66      71  any
          69    71      71  any
    Exceptions:
      throws org.eclipse.jgit.api.errors.GitAPIException

  private java.lang.String formatRefName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // java.lang.String name
         0: .line 437
            aload 1 /* name */
            ldc "refs/tags/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            aload 1 /* name */
            ldc "refs/tags/"
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 2
         1: .line 438
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            ldc "refs/"
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
         2: .line 437
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  private boolean filterLightweightTags(org.eclipse.jgit.lib.Ref);
    descriptor: (Lorg/eclipse/jgit/lib/Ref;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 1 // org.eclipse.jgit.lib.Ref ref
         0: .line 451
            aload 1 /* ref */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            astore 2 /* id */
        start local 2 // org.eclipse.jgit.lib.ObjectId id
         1: .line 453
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.useAll:Z
            ifne 3
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.useTags:Z
            ifne 3
            aload 2 /* id */
            ifnull 2
            aload 0 /* this */
            getfield org.eclipse.jgit.api.DescribeCommand.w:Lorg/eclipse/jgit/revwalk/RevWalk;
            aload 2 /* id */
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.parseTag:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/revwalk/RevTag;
            ifnonnull 3
      StackMap locals: org.eclipse.jgit.lib.ObjectId
      StackMap stack:
         2: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
         4: ireturn
         5: .line 454
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         6: .line 455
            iconst_0
            ireturn
        end local 2 // org.eclipse.jgit.lib.ObjectId id
        end local 1 // org.eclipse.jgit.lib.Ref ref
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    7     1   ref  Lorg/eclipse/jgit/lib/Ref;
            1    7     2    id  Lorg/eclipse/jgit/lib/ObjectId;
      Exception table:
        from    to  target  type
           1     4       5  Class java.io.IOException
    MethodParameters:
      Name  Flags
      ref   

  public java.lang.Object call();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.eclipse.jgit.api.DescribeCommand.call:()Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.eclipse.jgit.api.errors.GitAPIException

  private boolean lambda$0(org.eclipse.jgit.fnmatch.FileNameMatcher, org.eclipse.jgit.lib.Ref);
    descriptor: (Lorg/eclipse/jgit/fnmatch/FileNameMatcher;Lorg/eclipse/jgit/lib/Ref;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.eclipse.jgit.api.DescribeCommand this
        start local 2 // org.eclipse.jgit.lib.Ref tag
         0: .line 269
            aload 1
            aload 0 /* this */
            aload 2 /* tag */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.api.DescribeCommand.formatRefName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.eclipse.jgit.fnmatch.FileNameMatcher.append:(Ljava/lang/String;)V
         1: .line 270
            aload 1
            invokevirtual org.eclipse.jgit.fnmatch.FileNameMatcher.isMatch:()Z
            istore 3 /* result */
        start local 3 // boolean result
         2: .line 271
            aload 1
            invokevirtual org.eclipse.jgit.fnmatch.FileNameMatcher.reset:()V
         3: .line 272
            iload 3 /* result */
            ireturn
        end local 3 // boolean result
        end local 2 // org.eclipse.jgit.lib.Ref tag
        end local 0 // org.eclipse.jgit.api.DescribeCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/eclipse/jgit/api/DescribeCommand;
            0    4     2     tag  Lorg/eclipse/jgit/lib/Ref;
            2    4     3  result  Z

  private static java.util.stream.Stream lambda$1(java.util.stream.Stream);
    descriptor: (Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.stream.Stream i
         0: .line 274
            aload 0 /* i */
            areturn
        end local 0 // java.util.stream.Stream i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     i  Ljava/util/stream/Stream<Lorg/eclipse/jgit/lib/Ref;>;

  private static int lambda$4(org.eclipse.jgit.api.DescribeCommand$1Candidate, org.eclipse.jgit.api.DescribeCommand$1Candidate);
    descriptor: (Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.DescribeCommand$1Candidate o1
        start local 1 // org.eclipse.jgit.api.DescribeCommand$1Candidate o2
         0: .line 420
            aload 0 /* o1 */
            getfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
            aload 1 /* o2 */
            getfield org.eclipse.jgit.api.DescribeCommand$1Candidate.depth:I
            isub
            ireturn
        end local 1 // org.eclipse.jgit.api.DescribeCommand$1Candidate o2
        end local 0 // org.eclipse.jgit.api.DescribeCommand$1Candidate o1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    o1  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
            0    1     1    o2  Lorg/eclipse/jgit/api/DescribeCommand$1Candidate;
}
Signature: Lorg/eclipse/jgit/api/GitCommand<Ljava/lang/String;>;
SourceFile: "DescribeCommand.java"
NestMembers:
  org.eclipse.jgit.api.DescribeCommand$1  org.eclipse.jgit.api.DescribeCommand$1Candidate
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  org.eclipse.jgit.api.DescribeCommand$1
  Candidate = org.eclipse.jgit.api.DescribeCommand$1Candidate