class org.jruby.util.Dir$GlobPattern
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.jruby.util.Dir$GlobPattern
  super_class: java.lang.Object
{
  final byte[] bytes;
    descriptor: [B
    flags: (0x0010) ACC_FINAL

  final int begin;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final int end;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final org.jcodings.Encoding enc;
    descriptor: Lorg/jcodings/Encoding;
    flags: (0x0010) ACC_FINAL

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

  private final int flags;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(org.jruby.util.ByteList, int);
    descriptor: (Lorg/jruby/util/ByteList;I)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.util.Dir$GlobPattern this
        start local 1 // org.jruby.util.ByteList bytes
        start local 2 // int flags
         0: .line 330
            aload 0 /* this */
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getBegin:()I
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getRealSize:()I
            iadd
            aload 1 /* bytes */
            invokevirtual org.jruby.util.ByteList.getEncoding:()Lorg/jcodings/Encoding;
            iload 2 /* flags */
            invokespecial org.jruby.util.Dir$GlobPattern.<init>:([BIILorg/jcodings/Encoding;I)V
         1: .line 331
            return
        end local 2 // int flags
        end local 1 // org.jruby.util.ByteList bytes
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/util/Dir$GlobPattern;
            0    2     1  bytes  Lorg/jruby/util/ByteList;
            0    2     2  flags  I
    MethodParameters:
       Name  Flags
      bytes  
      flags  

  void <init>(byte[], int, int, org.jcodings.Encoding, int);
    descriptor: ([BIILorg/jcodings/Encoding;I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // org.jruby.util.Dir$GlobPattern this
        start local 1 // byte[] bytes
        start local 2 // int index
        start local 3 // int end
        start local 4 // org.jcodings.Encoding enc
        start local 5 // int flags
         0: .line 333
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 334
            aload 0 /* this */
            aload 1 /* bytes */
            putfield org.jruby.util.Dir$GlobPattern.bytes:[B
         2: .line 335
            aload 0 /* this */
            iload 2 /* index */
            putfield org.jruby.util.Dir$GlobPattern.index:I
         3: .line 336
            aload 0 /* this */
            iload 2 /* index */
            putfield org.jruby.util.Dir$GlobPattern.begin:I
         4: .line 337
            aload 0 /* this */
            iload 3 /* end */
            putfield org.jruby.util.Dir$GlobPattern.end:I
         5: .line 338
            aload 0 /* this */
            aload 4 /* enc */
            putfield org.jruby.util.Dir$GlobPattern.enc:Lorg/jcodings/Encoding;
         6: .line 339
            aload 0 /* this */
            iload 5 /* flags */
            putfield org.jruby.util.Dir$GlobPattern.flags:I
         7: .line 340
            return
        end local 5 // int flags
        end local 4 // org.jcodings.Encoding enc
        end local 3 // int end
        end local 2 // int index
        end local 1 // byte[] bytes
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/jruby/util/Dir$GlobPattern;
            0    8     1  bytes  [B
            0    8     2  index  I
            0    8     3    end  I
            0    8     4    enc  Lorg/jcodings/Encoding;
            0    8     5  flags  I
    MethodParameters:
       Name  Flags
      bytes  
      index  
      end    
      enc    
      flags  

  public int findClosingIndexOf(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.jruby.util.Dir$GlobPattern this
        start local 1 // int leftTokenIndex
         0: .line 343
            iload 1 /* leftTokenIndex */
            iconst_m1
            if_icmpeq 1
            iload 1 /* leftTokenIndex */
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.end:I
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: iconst_m1
            ireturn
         2: .line 345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.bytes:[B
            iload 1 /* leftTokenIndex */
            baload
            istore 2 /* leftToken */
        start local 2 // byte leftToken
         3: .line 348
            iload 2 /* leftToken */
            lookupswitch { // 2
                   91: 6
                  123: 4
              default: 8
          }
         4: .line 349
      StackMap locals: int
      StackMap stack:
            bipush 125
            istore 3 /* rightToken */
        start local 3 // byte rightToken
         5: goto 9
        end local 3 // byte rightToken
         6: .line 350
      StackMap locals:
      StackMap stack:
            bipush 93
            istore 3 /* rightToken */
        start local 3 // byte rightToken
         7: goto 9
        end local 3 // byte rightToken
         8: .line 351
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        start local 3 // byte rightToken
         9: .line 354
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 4 /* nest */
        start local 4 // int nest
        10: .line 355
            aload 0 /* this */
            iload 1 /* leftTokenIndex */
            iconst_1
            iadd
            putfield org.jruby.util.Dir$GlobPattern.index:I
        11: .line 356
            goto 18
        12: .line 357
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.next:()B
            istore 5 /* c */
        start local 5 // byte c
        13: .line 359
            iload 5 /* c */
            iload 2 /* leftToken */
            if_icmpne 16
        14: .line 360
            iinc 4 /* nest */ 1
        15: .line 361
            goto 18
      StackMap locals: int
      StackMap stack:
        16: iload 5 /* c */
            iload 3 /* rightToken */
            if_icmpne 18
            iinc 4 /* nest */ -1
            iload 4 /* nest */
            ifne 18
        17: .line 362
            aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.index:()I
            ireturn
        end local 5 // byte c
        18: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.hasNext:()Z
            ifne 12
        19: .line 366
            iconst_m1
            ireturn
        end local 4 // int nest
        end local 3 // byte rightToken
        end local 2 // byte leftToken
        end local 1 // int leftTokenIndex
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   20     0            this  Lorg/jruby/util/Dir$GlobPattern;
            0   20     1  leftTokenIndex  I
            3   20     2       leftToken  B
            5    6     3      rightToken  B
            7    8     3      rightToken  B
            9   20     3      rightToken  B
           10   20     4            nest  I
           13   18     5               c  B
    MethodParameters:
                Name  Flags
      leftTokenIndex  

  public boolean hasNext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.util.Dir$GlobPattern this
         0: .line 370
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.index:I
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.end:I
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/util/Dir$GlobPattern;

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.util.Dir$GlobPattern this
         0: .line 374
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.begin:I
            putfield org.jruby.util.Dir$GlobPattern.index:I
         1: .line 375
            return
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/util/Dir$GlobPattern;

  public void setIndex(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.util.Dir$GlobPattern this
        start local 1 // int value
         0: .line 378
            aload 0 /* this */
            iload 1 /* value */
            putfield org.jruby.util.Dir$GlobPattern.index:I
         1: .line 379
            return
        end local 1 // int value
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/jruby/util/Dir$GlobPattern;
            0    2     1  value  I
    MethodParameters:
       Name  Flags
      value  

  public int index();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.util.Dir$GlobPattern this
         0: .line 383
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.index:I
            iconst_1
            isub
            ireturn
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/util/Dir$GlobPattern;

  public int indexOf(byte);
    descriptor: (B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.util.Dir$GlobPattern this
        start local 1 // byte c
         0: .line 387
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.next:()B
            iload 1 /* c */
            if_icmpne 2
            aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.index:()I
            ireturn
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            invokevirtual org.jruby.util.Dir$GlobPattern.hasNext:()Z
            ifne 1
         3: .line 389
            iconst_m1
            ireturn
        end local 1 // byte c
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/util/Dir$GlobPattern;
            0    4     1     c  B
    MethodParameters:
      Name  Flags
      c     

  public byte next();
    descriptor: ()B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.jruby.util.Dir$GlobPattern this
         0: .line 393
            aload 0 /* this */
            getfield org.jruby.util.Dir$GlobPattern.bytes:[B
            aload 0 /* this */
            dup
            getfield org.jruby.util.Dir$GlobPattern.index:I
            dup_x1
            iconst_1
            iadd
            putfield org.jruby.util.Dir$GlobPattern.index:I
            baload
            ireturn
        end local 0 // org.jruby.util.Dir$GlobPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/util/Dir$GlobPattern;
}
SourceFile: "Dir.java"
NestHost: org.jruby.util.Dir
InnerClasses:
  private GlobPattern = org.jruby.util.Dir$GlobPattern of org.jruby.util.Dir