public class org.jruby.RubyDir extends org.jruby.RubyObject implements java.io.Closeable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.RubyDir
  super_class: org.jruby.RubyObject
{
  private org.jruby.RubyString path;
    descriptor: Lorg/jruby/RubyString;
    flags: (0x0002) ACC_PRIVATE

  protected org.jruby.util.FileResource dir;
    descriptor: Lorg/jruby/util/FileResource;
    flags: (0x0004) ACC_PROTECTED

  private long lastModified;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] snapshot;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

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

  private org.jcodings.Encoding encoding;
    descriptor: Lorg/jcodings/Encoding;
    flags: (0x0002) ACC_PRIVATE

  private static final java.util.regex.Pattern PROTOCOL_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.runtime.ObjectAllocator DIR_ALLOCATOR;
    descriptor: Lorg/jruby/runtime/ObjectAllocator;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] BASE;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] BASE_FLAGS;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] NO_FILES;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final org.jruby.util.ByteList HOME;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final org.jruby.util.ByteList user_home;
    descriptor: Lorg/jruby/util/ByteList;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 82
            ldc "^(uri|jar|file|classpath):([^:]*:)?//?.*"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.jruby.RubyDir.PROTOCOL_PATTERN:Ljava/util/regex/Pattern;
         1: .line 88
            new org.jruby.RubyDir$1
            dup
            invokespecial org.jruby.RubyDir$1.<init>:()V
            putstatic org.jruby.RubyDir.DIR_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         2: .line 226
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "base"
            aastore
            putstatic org.jruby.RubyDir.BASE:[Ljava/lang/String;
         3: .line 227
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "base"
            aastore
            dup
            iconst_1
            ldc "flags"
            aastore
            putstatic org.jruby.RubyDir.BASE_FLAGS:[Ljava/lang/String;
         4: .line 397
            getstatic org.jruby.util.StringSupport.EMPTY_STRING_ARRAY:[Ljava/lang/String;
            putstatic org.jruby.RubyDir.NO_FILES:[Ljava/lang/String;
         5: .line 1085
            new org.jruby.util.ByteList
            dup
            iconst_4
            newarray 8
            dup
            iconst_0
            bipush 72
            bastore
            dup
            iconst_1
            bipush 79
            bastore
            dup
            iconst_2
            bipush 77
            bastore
            dup
            iconst_3
            bipush 69
            bastore
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyDir.HOME:Lorg/jruby/util/ByteList;
         6: .line 1092
            new org.jruby.util.ByteList
            dup
            bipush 9
            newarray 8
            dup
            iconst_0
            bipush 117
            bastore
            dup
            iconst_1
            bipush 115
            bastore
            dup
            iconst_2
            bipush 101
            bastore
            dup
            iconst_3
            bipush 114
            bastore
            dup
            iconst_4
            bipush 46
            bastore
            dup
            iconst_5
            bipush 104
            bastore
            dup
            bipush 6
            bipush 111
            bastore
            dup
            bipush 7
            bipush 109
            bastore
            dup
            bipush 8
            bipush 101
            bastore
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BZ)V
            putstatic org.jruby.RubyDir.user_home:Lorg/jruby/util/ByteList;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.jruby.Ruby, org.jruby.RubyClass);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass type
         0: .line 85
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* type */
            invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 76
            aload 0 /* this */
            ldc -9223372036854775808
            putfield org.jruby.RubyDir.lastModified:J
         2: .line 79
            aload 0 /* this */
            iconst_1
            putfield org.jruby.RubyDir.isOpen:Z
         3: .line 86
            return
        end local 2 // org.jruby.RubyClass type
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyDir;
            0    4     1  runtime  Lorg/jruby/Ruby;
            0    4     2     type  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      type     

  public static org.jruby.RubyClass createDirClass(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 96
            aload 0 /* runtime */
            ldc "Dir"
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            getstatic org.jruby.RubyDir.DIR_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
            invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
            astore 1 /* dirClass */
        start local 1 // org.jruby.RubyClass dirClass
         1: .line 98
            aload 1 /* dirClass */
            getstatic org.jruby.runtime.ClassIndex.DIR:Lorg/jruby/runtime/ClassIndex;
            invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
         2: .line 99
            aload 1 /* dirClass */
            ldc Lorg/jruby/RubyDir;
            invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
         3: .line 101
            aload 1 /* dirClass */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEnumerable:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyClass.includeModule:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         4: .line 102
            aload 1 /* dirClass */
            ldc Lorg/jruby/RubyDir;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         5: .line 104
            aload 1 /* dirClass */
            areturn
        end local 1 // org.jruby.RubyClass dirClass
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0   runtime  Lorg/jruby/Ruby;
            1    6     1  dirClass  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  

  private final void checkDir();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 108
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDirIgnoreClosed:()V
         1: .line 110
            aload 0 /* this */
            getfield org.jruby.RubyDir.isOpen:Z
            ifne 2
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            ldc "closed directory"
            invokevirtual org.jruby.Ruby.newIOError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 111
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyDir;

  private final void checkDirIgnoreClosed();
    descriptor: ()V
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 114
            aload 0 /* this */
            ldc "Dir"
            invokevirtual org.jruby.RubyDir.testFrozen:(Ljava/lang/String;)V
         1: .line 116
            aload 0 /* this */
            getfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
            ifnull 2
            aload 0 /* this */
            getfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
            invokeinterface org.jruby.util.FileResource.exists:()Z
            ifeq 4
            aload 0 /* this */
            getfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
            invokeinterface org.jruby.util.FileResource.lastModified:()J
            aload 0 /* this */
            getfield org.jruby.RubyDir.lastModified:J
            lcmp
            ifle 4
         2: .line 117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
            invokeinterface org.jruby.util.FileResource.lastModified:()J
            putfield org.jruby.RubyDir.lastModified:J
         3: .line 118
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
            invokestatic org.jruby.RubyDir.list:(Lorg/jruby/util/FileResource;)[Ljava/lang/String;
            putfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
         4: .line 120
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/jruby/RubyDir;

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
         0: .line 135
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 137
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* path */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultFilesystemEncoding:()Lorg/jcodings/Encoding;
            aload 3 /* runtime */
            invokevirtual org.jruby.RubyDir.initializeCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jcodings/Encoding;Lorg/jruby/Ruby;)Lorg/jruby/RubyDir;
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyDir;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2     path  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     3  runtime  Lorg/jruby/Ruby;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize"})
    MethodParameters:
         Name  Flags
      context  
      path     

  public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
         0: .line 150
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 152
            aconst_null
            astore 5 /* encoding */
        start local 5 // org.jcodings.Encoding encoding
         2: .line 154
            aload 3 /* encOpts */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 7
         3: .line 155
            aload 3 /* encOpts */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 6 /* opts */
        start local 6 // org.jruby.RubyHash opts
         4: .line 156
            aload 1 /* context */
            aload 6 /* opts */
            ldc "encoding"
            invokestatic org.jruby.ast.util.ArgsUtil.extractKeywordArg:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* encodingArg */
        start local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
         5: .line 157
            aload 7 /* encodingArg */
            ifnull 7
            aload 7 /* encodingArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 7
         6: .line 158
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 7 /* encodingArg */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 5 /* encoding */
        end local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
        end local 6 // org.jruby.RubyHash opts
         7: .line 162
      StackMap locals: org.jruby.Ruby org.jcodings.Encoding
      StackMap stack:
            aload 5 /* encoding */
            ifnonnull 8
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultFilesystemEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* encoding */
         8: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* path */
            aload 5 /* encoding */
            aload 4 /* runtime */
            invokevirtual org.jruby.RubyDir.initializeCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jcodings/Encoding;Lorg/jruby/Ruby;)Lorg/jruby/RubyDir;
            areturn
        end local 5 // org.jcodings.Encoding encoding
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/jruby/RubyDir;
            0    9     1      context  Lorg/jruby/runtime/ThreadContext;
            0    9     2         path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     3      encOpts  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     4      runtime  Lorg/jruby/Ruby;
            2    9     5     encoding  Lorg/jcodings/Encoding;
            4    7     6         opts  Lorg/jruby/RubyHash;
            5    7     7  encodingArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"initialize"})
    MethodParameters:
         Name  Flags
      context  
      path     
      encOpts  

  private org.jruby.RubyDir initializeCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jcodings.Encoding, org.jruby.Ruby);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jcodings/Encoding;Lorg/jruby/Ruby;)Lorg/jruby/RubyDir;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject pathArg
        start local 3 // org.jcodings.Encoding encoding
        start local 4 // org.jruby.Ruby runtime
         0: .line 168
            aload 4 /* runtime */
            aload 1 /* context */
            aload 2 /* pathArg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 5 /* newPath */
        start local 5 // org.jruby.RubyString newPath
         1: .line 169
            aload 0 /* this */
            aload 5 /* newPath */
            putfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
         2: .line 170
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyDir.pos:I
         3: .line 172
            aload 0 /* this */
            aload 3 /* encoding */
            putfield org.jruby.RubyDir.encoding:Lorg/jcodings/Encoding;
         4: .line 174
            aload 4 /* runtime */
            aload 5 /* newPath */
            invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
            aconst_null
            invokestatic org.jruby.RubyFile.adjustRootPathOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* adjustedPath */
        start local 6 // java.lang.String adjustedPath
         5: .line 175
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            aload 6 /* adjustedPath */
            invokestatic org.jruby.RubyDir.checkDirIsTwoSlashesOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;)V
         6: .line 177
            aload 0 /* this */
            aload 1 /* context */
            aload 6 /* adjustedPath */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            putfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
         7: .line 178
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyDir.dir:Lorg/jruby/util/FileResource;
            aload 6 /* adjustedPath */
            invokestatic org.jruby.RubyDir.getEntries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/FileResource;Ljava/lang/String;)[Ljava/lang/String;
            putfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
         8: .line 180
            aload 0 /* this */
            areturn
        end local 6 // java.lang.String adjustedPath
        end local 5 // org.jruby.RubyString newPath
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jcodings.Encoding encoding
        end local 2 // org.jruby.runtime.builtin.IRubyObject pathArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/jruby/RubyDir;
            0    9     1       context  Lorg/jruby/runtime/ThreadContext;
            0    9     2       pathArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     3      encoding  Lorg/jcodings/Encoding;
            0    9     4       runtime  Lorg/jruby/Ruby;
            1    9     5       newPath  Lorg/jruby/RubyString;
            5    9     6  adjustedPath  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      context   
      pathArg   
      encoding  
      runtime   

  public org.jruby.runtime.builtin.IRubyObject initialize19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 185
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* arg */
            invokevirtual org.jruby.RubyDir.initialize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyDir;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      arg      

  private static java.util.ArrayList<org.jruby.util.ByteList> dirGlobs(org.jruby.runtime.ThreadContext, java.lang.String, org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;I)Ljava/util/ArrayList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String cwd
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // int flags
         0: .line 191
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* dirs */
        start local 4 // java.util.ArrayList dirs
         1: .line 193
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 5
         3: .line 194
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 4 /* dirs */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* cwd */
            aload 0 /* context */
            aload 2 /* args */
            iload 5 /* i */
            aaload
            invokestatic org.jruby.RubyDir.globArgumentAsByteList:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/util/ByteList;
            iload 3 /* flags */
            invokestatic org.jruby.util.Dir.push_glob:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/ByteList;I)Ljava/util/List;
            invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 193
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 5 /* i */
            aload 2 /* args */
            arraylength
            if_icmplt 3
        end local 5 // int i
         6: .line 197
            aload 4 /* dirs */
            areturn
        end local 4 // java.util.ArrayList dirs
        end local 3 // int flags
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // java.lang.String cwd
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1      cwd  Ljava/lang/String;
            0    7     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     3    flags  I
            1    7     4     dirs  Ljava/util/ArrayList<Lorg/jruby/util/ByteList;>;
            2    6     5        i  I
    Signature: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;I)Ljava/util/ArrayList<Lorg/jruby/util/ByteList;>;
    MethodParameters:
         Name  Flags
      context  
      cwd      
      args     
      flags    

  private static org.jruby.RubyArray asRubyStringList(org.jruby.Ruby, java.util.List<org.jruby.util.ByteList>);
    descriptor: (Lorg/jruby/Ruby;Ljava/util/List;)Lorg/jruby/RubyArray;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.util.List dirs
         0: .line 201
            aload 1 /* dirs */
            invokeinterface java.util.List.size:()I
            istore 2 /* size */
        start local 2 // int size
         1: .line 202
            iload 2 /* size */
            ifne 2
            aload 0 /* runtime */
            invokestatic org.jruby.RubyArray.newEmptyArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
            areturn
         2: .line 204
      StackMap locals: int
      StackMap stack:
            iload 2 /* size */
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 3 /* dirStrings */
        start local 3 // org.jruby.runtime.builtin.IRubyObject[] dirStrings
         3: .line 205
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 206
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] int
      StackMap stack:
            aload 3 /* dirStrings */
            iload 4 /* i */
            aload 0 /* runtime */
            aload 1 /* dirs */
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jruby.util.ByteList
            invokestatic org.jruby.RubyString.newStringNoCopy:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            aastore
         6: .line 205
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 2 /* size */
            if_icmplt 5
        end local 4 // int i
         8: .line 208
            aload 0 /* runtime */
            aload 3 /* dirStrings */
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject[] dirStrings
        end local 2 // int size
        end local 1 // java.util.List dirs
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0     runtime  Lorg/jruby/Ruby;
            0    9     1        dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
            1    9     2        size  I
            3    9     3  dirStrings  [Lorg/jruby/runtime/builtin/IRubyObject;
            4    8     4           i  I
    Signature: (Lorg/jruby/Ruby;Ljava/util/List<Lorg/jruby/util/ByteList;>;)Lorg/jruby/RubyArray;
    MethodParameters:
         Name  Flags
      runtime  
      dirs     

  private static java.lang.String getCWD(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 212
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            astore 1 /* cwd */
        start local 1 // java.lang.String cwd
         1: .line 214
            aload 1 /* cwd */
            ldc "uri:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            aload 1 /* cwd */
            ldc "jar:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 2
            aload 1 /* cwd */
            ldc "file:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 216
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* cwd */
            areturn
         3: .line 219
      StackMap locals:
      StackMap stack:
            new org.jruby.util.JRubyFile
            dup
            aload 1 /* cwd */
            invokespecial org.jruby.util.JRubyFile.<init>:(Ljava/lang/String;)V
            invokevirtual org.jruby.util.JRubyFile.getCanonicalPath:()Ljava/lang/String;
         4: areturn
         5: .line 221
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         6: .line 222
            aload 1 /* cwd */
            areturn
        end local 1 // java.lang.String cwd
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            1    7     1      cwd  Ljava/lang/String;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException
    MethodParameters:
         Name  Flags
      runtime  

  private static java.lang.String globOptions(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;[I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int[] flags
         0: .line 231
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 233
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmple 22
         2: .line 234
            aload 3 /* runtime */
            aload 1 /* args */
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            aaload
            invokestatic org.jruby.util.TypeConverter.checkHashType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* tmp */
        start local 4 // org.jruby.runtime.builtin.IRubyObject tmp
         3: .line 235
            aload 4 /* tmp */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 7
         4: .line 236
            aload 2 /* flags */
            ifnull 22
         5: .line 237
            aload 2 /* flags */
            iconst_0
            aload 1 /* args */
            iconst_1
            aaload
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            iastore
         6: .line 239
            goto 22
         7: .line 240
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* flags */
            ifnull 8
            getstatic org.jruby.RubyDir.BASE_FLAGS:[Ljava/lang/String;
            goto 9
      StackMap locals:
      StackMap stack:
         8: getstatic org.jruby.RubyDir.BASE:[Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String[]
         9: astore 5 /* keys */
        start local 5 // java.lang.String[] keys
        10: .line 241
            aload 0 /* context */
            aload 4 /* tmp */
            checkcast org.jruby.RubyHash
            aload 5 /* keys */
            invokestatic org.jruby.ast.util.ArgsUtil.extractKeywordArgs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;[Ljava/lang/String;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* rets */
        start local 6 // org.jruby.runtime.builtin.IRubyObject[] rets
        11: .line 242
            aload 6 /* rets */
            iconst_0
            aaload
            ifnull 12
            aload 6 /* rets */
            iconst_0
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 13
      StackMap locals: java.lang.String[] org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
        12: ldc ""
            areturn
        13: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 6 /* rets */
            iconst_0
            aaload
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 7 /* path */
        start local 7 // org.jruby.RubyString path
        14: .line 244
            iconst_1
            anewarray org.jcodings.Encoding
            dup
            iconst_0
            aload 7 /* path */
            invokevirtual org.jruby.RubyString.getEncoding:()Lorg/jcodings/Encoding;
            aastore
            astore 8 /* enc */
        start local 8 // org.jcodings.Encoding[] enc
        15: .line 245
            aload 7 /* path */
            invokevirtual org.jruby.RubyString.getUnicodeValue:()Ljava/lang/String;
            astore 9 /* base */
        start local 9 // java.lang.String base
        16: .line 248
            aload 9 /* base */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 18
        17: .line 249
            aload 0 /* context */
            aload 9 /* base */
            aload 8 /* enc */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            iconst_1
            iconst_0
            invokestatic org.jruby.RubyFile.expandPath:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jcodings/Encoding;Ljava/lang/String;ZZ)Ljava/lang/String;
            astore 9 /* base */
        18: .line 252
      StackMap locals: org.jruby.RubyString org.jcodings.Encoding[] java.lang.String
      StackMap stack:
            aload 2 /* flags */
            ifnull 21
            aload 2 /* flags */
            iconst_0
            aload 6 /* rets */
            iconst_1
            aaload
            ifnonnull 19
            iconst_0
            goto 20
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] int[] org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject java.lang.String[] org.jruby.runtime.builtin.IRubyObject[] org.jruby.RubyString org.jcodings.Encoding[] java.lang.String
      StackMap stack: int[] int
        19: aload 6 /* rets */
            iconst_1
            aaload
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] int[] org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject java.lang.String[] org.jruby.runtime.builtin.IRubyObject[] org.jruby.RubyString org.jcodings.Encoding[] java.lang.String
      StackMap stack: int[] int int
        20: iastore
        21: .line 254
      StackMap locals:
      StackMap stack:
            aload 9 /* base */
            areturn
        end local 9 // java.lang.String base
        end local 8 // org.jcodings.Encoding[] enc
        end local 7 // org.jruby.RubyString path
        end local 6 // org.jruby.runtime.builtin.IRubyObject[] rets
        end local 5 // java.lang.String[] keys
        end local 4 // org.jruby.runtime.builtin.IRubyObject tmp
        22: .line 258
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] int[] org.jruby.Ruby
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // int[] flags
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0  context  Lorg/jruby/runtime/ThreadContext;
            0   23     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     2    flags  [I
            1   23     3  runtime  Lorg/jruby/Ruby;
            3   22     4      tmp  Lorg/jruby/runtime/builtin/IRubyObject;
           10   22     5     keys  [Ljava/lang/String;
           11   22     6     rets  [Lorg/jruby/runtime/builtin/IRubyObject;
           14   22     7     path  Lorg/jruby/RubyString;
           15   22     8      enc  [Lorg/jcodings/Encoding;
           16   22     9     base  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      args     
      flags    

  public static org.jruby.runtime.builtin.IRubyObject aref(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 263
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 264
            aload 0 /* context */
            aload 2 /* args */
            aconst_null
            invokestatic org.jruby.RubyDir.globOptions:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;[I)Ljava/lang/String;
            astore 4 /* base */
        start local 4 // java.lang.String base
         2: .line 267
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 9
         3: .line 268
            aload 4 /* base */
            ifnull 4
            aload 4 /* base */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 5
      StackMap locals: org.jruby.Ruby java.lang.String
      StackMap stack:
         4: aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 4 /* base */
      StackMap locals:
      StackMap stack: java.lang.String
         6: astore 6 /* dir */
        start local 6 // java.lang.String dir
         7: .line 269
            aload 3 /* runtime */
            aload 6 /* dir */
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyDir.globArgumentAsByteList:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/util/ByteList;
            iconst_0
            invokestatic org.jruby.util.Dir.push_glob:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/ByteList;I)Ljava/util/List;
            astore 5 /* dirs */
        end local 6 // java.lang.String dir
        start local 5 // java.util.List dirs
         8: .line 270
            goto 18
        end local 5 // java.util.List dirs
         9: .line 272
      StackMap locals:
      StackMap stack:
            aload 4 /* base */
            ifnull 12
        10: .line 273
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            invokestatic org.jruby.util.ArraySupport.newCopy:([Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* arefArgs */
        start local 6 // org.jruby.runtime.builtin.IRubyObject[] arefArgs
        11: .line 274
            goto 14
        end local 6 // org.jruby.runtime.builtin.IRubyObject[] arefArgs
        12: .line 275
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            astore 6 /* arefArgs */
        start local 6 // org.jruby.runtime.builtin.IRubyObject[] arefArgs
        13: .line 276
            ldc ""
            astore 4 /* base */
        14: .line 279
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby java.lang.String top org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
            aload 4 /* base */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 15
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 4 /* base */
      StackMap locals:
      StackMap stack: java.lang.String
        16: astore 7 /* dir */
        start local 7 // java.lang.String dir
        17: .line 280
            aload 0 /* context */
            aload 7 /* dir */
            aload 6 /* arefArgs */
            iconst_0
            invokestatic org.jruby.RubyDir.dirGlobs:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;I)Ljava/util/ArrayList;
            astore 5 /* dirs */
        end local 7 // java.lang.String dir
        end local 6 // org.jruby.runtime.builtin.IRubyObject[] arefArgs
        start local 5 // java.util.List dirs
        18: .line 283
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby java.lang.String java.util.List
      StackMap stack:
            aload 3 /* runtime */
            aload 5 /* dirs */
            invokestatic org.jruby.RubyDir.asRubyStringList:(Lorg/jruby/Ruby;Ljava/util/List;)Lorg/jruby/RubyArray;
            areturn
        end local 5 // java.util.List dirs
        end local 4 // java.lang.String base
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0   context  Lorg/jruby/runtime/ThreadContext;
            0   19     1      recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   19     2      args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   19     3   runtime  Lorg/jruby/Ruby;
            2   19     4      base  Ljava/lang/String;
            8    9     5      dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
           18   19     5      dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
            7    8     6       dir  Ljava/lang/String;
           11   12     6  arefArgs  [Lorg/jruby/runtime/builtin/IRubyObject;
           13   18     6  arefArgs  [Lorg/jruby/runtime/builtin/IRubyObject;
           17   18     7       dir  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]"}, rest = true, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  private static org.jruby.util.ByteList globArgumentAsByteList(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/util/ByteList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 287
            aload 0 /* context */
            aload 1 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      arg      

  public static org.jruby.runtime.builtin.IRubyObject glob(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 298
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 299
            iconst_1
            newarray 10
            astore 5 /* flags */
        start local 5 // int[] flags
         2: .line 300
            aload 0 /* context */
            aload 2 /* args */
            aload 5 /* flags */
            invokestatic org.jruby.RubyDir.globOptions:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;[I)Ljava/lang/String;
            astore 6 /* base */
        start local 6 // java.lang.String base
         3: .line 303
            aload 6 /* base */
            ifnull 6
            aload 6 /* base */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 6
            aload 0 /* context */
            aload 6 /* base */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            invokeinterface org.jruby.util.FileResource.exists:()Z
            ifne 6
         4: .line 304
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* dirs */
        start local 7 // java.util.List dirs
         5: .line 305
            goto 15
        end local 7 // java.util.List dirs
         6: .line 306
      StackMap locals: org.jruby.Ruby int[] java.lang.String
      StackMap stack:
            aload 2 /* args */
            iconst_0
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.checkArrayType:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 8 /* tmp */
        start local 8 // org.jruby.runtime.builtin.IRubyObject tmp
         7: .line 307
            aload 6 /* base */
            ifnull 8
            aload 6 /* base */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 9
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby int[] java.lang.String top org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         8: aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 6 /* base */
      StackMap locals:
      StackMap stack: java.lang.String
        10: astore 9 /* dir */
        start local 9 // java.lang.String dir
        11: .line 309
            aload 8 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 14
        12: .line 310
            aload 4 /* runtime */
            aload 9 /* dir */
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyDir.globArgumentAsByteList:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/util/ByteList;
            aload 5 /* flags */
            iconst_0
            iaload
            invokestatic org.jruby.util.Dir.push_glob:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/util/ByteList;I)Ljava/util/List;
            astore 7 /* dirs */
        start local 7 // java.util.List dirs
        13: .line 311
            goto 15
        end local 7 // java.util.List dirs
        14: .line 312
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* context */
            aload 9 /* dir */
            aload 8 /* tmp */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 5 /* flags */
            iconst_0
            iaload
            invokestatic org.jruby.RubyDir.dirGlobs:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;I)Ljava/util/ArrayList;
            astore 7 /* dirs */
        end local 9 // java.lang.String dir
        end local 8 // org.jruby.runtime.builtin.IRubyObject tmp
        start local 7 // java.util.List dirs
        15: .line 316
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby int[] java.lang.String java.util.List
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 22
        16: .line 317
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        17: goto 20
        18: .line 318
      StackMap locals: int
      StackMap stack:
            aload 3 /* block */
            aload 0 /* context */
            aload 4 /* runtime */
            aload 7 /* dirs */
            iload 8 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.jruby.util.ByteList
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        19: .line 317
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 8 /* i */
            aload 7 /* dirs */
            invokeinterface java.util.List.size:()I
            if_icmplt 18
        end local 8 // int i
        21: .line 321
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        22: .line 324
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            aload 7 /* dirs */
            invokestatic org.jruby.RubyDir.asRubyStringList:(Lorg/jruby/Ruby;Ljava/util/List;)Lorg/jruby/RubyArray;
            areturn
        end local 7 // java.util.List dirs
        end local 6 // java.lang.String base
        end local 5 // int[] flags
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0  context  Lorg/jruby/runtime/ThreadContext;
            0   23     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     3    block  Lorg/jruby/runtime/Block;
            1   23     4  runtime  Lorg/jruby/Ruby;
            2   23     5    flags  [I
            3   23     6     base  Ljava/lang/String;
            5    6     7     dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
           13   14     7     dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
           15   23     7     dirs  Ljava/util/List<Lorg/jruby/util/ByteList;>;
            7   15     8      tmp  Lorg/jruby/runtime/builtin/IRubyObject;
           11   15     9      dir  Ljava/lang/String;
           17   21     8        i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(required = 1, optional = 2, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     
      block    

  public org.jruby.RubyArray entries();
    descriptor: ()Lorg/jruby/RubyArray;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 332
            new org.jruby.javasupport.JavaUtil$StringConverter
            dup
            aload 0 /* this */
            getfield org.jruby.RubyDir.encoding:Lorg/jcodings/Encoding;
            invokespecial org.jruby.javasupport.JavaUtil$StringConverter.<init>:(Lorg/jcodings/Encoding;)V
            astore 1 /* converter */
        start local 1 // org.jruby.javasupport.JavaUtil$StringConverter converter
         1: .line 333
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
            aload 1 /* converter */
            invokestatic org.jruby.javasupport.JavaUtil.convertStringArrayToRuby:(Lorg/jruby/Ruby;[Ljava/lang/String;Lorg/jruby/javasupport/JavaUtil$StringConverter;)[Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 1 // org.jruby.javasupport.JavaUtil$StringConverter converter
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/jruby/RubyDir;
            1    2     1  converter  Lorg/jruby/javasupport/JavaUtil$StringConverter;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"entries"})

  public static org.jruby.RubyArray entries(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject path
         0: .line 338
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* recv */
            aload 1 /* path */
            invokestatic org.jruby.RubyDir.entries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject path
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  path  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      recv  
      path  

  public static org.jruby.RubyArray entries(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject path
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.builtin.IRubyObject opts
         0: .line 343
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* recv */
            aload 1 /* path */
            aload 3 /* opts */
            invokestatic org.jruby.RubyDir.entries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject opts
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject path
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2   arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3  opts  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      recv  
      path  
      arg   
      opts  

  public static org.jruby.RubyArray entries(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 351
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 353
            aload 3 /* runtime */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 4 /* path */
        start local 4 // org.jruby.RubyString path
         2: .line 355
            aload 0 /* context */
            aload 4 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultEncoding:()Lorg/jcodings/Encoding;
            iconst_0
            invokestatic org.jruby.RubyDir.entriesCommon:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jcodings/Encoding;Z)Lorg/jruby/RubyArray;
            areturn
        end local 4 // org.jruby.RubyString path
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  runtime  Lorg/jruby/Ruby;
            2    3     4     path  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"entries"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.RubyArray entries(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.builtin.IRubyObject opts
         0: .line 360
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 361
            aconst_null
            astore 5 /* encoding */
        start local 5 // org.jcodings.Encoding encoding
         2: .line 363
            aload 4 /* runtime */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 6 /* path */
        start local 6 // org.jruby.RubyString path
         3: .line 365
            aload 3 /* opts */
            instanceof org.jruby.RubyHash
            ifeq 7
         4: .line 366
            aload 0 /* context */
            aload 3 /* opts */
            checkcast org.jruby.RubyHash
            ldc "encoding"
            invokestatic org.jruby.ast.util.ArgsUtil.extractKeywordArg:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* encodingArg */
        start local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
         5: .line 367
            aload 7 /* encodingArg */
            ifnull 7
            aload 7 /* encodingArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 7
         6: .line 368
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 7 /* encodingArg */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 5 /* encoding */
        end local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
         7: .line 371
      StackMap locals: org.jruby.Ruby org.jcodings.Encoding org.jruby.RubyString
      StackMap stack:
            aload 5 /* encoding */
            ifnonnull 8
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* encoding */
         8: .line 373
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 6 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            aload 5 /* encoding */
            iconst_0
            invokestatic org.jruby.RubyDir.entriesCommon:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jcodings/Encoding;Z)Lorg/jruby/RubyArray;
            areturn
        end local 6 // org.jruby.RubyString path
        end local 5 // org.jcodings.Encoding encoding
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.builtin.IRubyObject opts
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0      context  Lorg/jruby/runtime/ThreadContext;
            0    9     1         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     2          arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     3         opts  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     4      runtime  Lorg/jruby/Ruby;
            2    9     5     encoding  Lorg/jcodings/Encoding;
            3    9     6         path  Lorg/jruby/RubyString;
            5    7     7  encodingArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"entries"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      
      opts     

  private static org.jruby.RubyArray entriesCommon(org.jruby.runtime.ThreadContext, java.lang.String, org.jcodings.Encoding, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jcodings/Encoding;Z)Lorg/jruby/RubyArray;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=14, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String path
        start local 2 // org.jcodings.Encoding encoding
        start local 3 // boolean childrenOnly
         0: .line 377
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 378
            aload 4 /* runtime */
            aload 1 /* path */
            aconst_null
            invokestatic org.jruby.RubyFile.adjustRootPathOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* adjustedPath */
        start local 5 // java.lang.String adjustedPath
         2: .line 379
            aload 4 /* runtime */
            aload 5 /* adjustedPath */
            invokestatic org.jruby.RubyDir.checkDirIsTwoSlashesOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;)V
         3: .line 381
            aload 0 /* context */
            aload 1 /* path */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            astore 6 /* directory */
        start local 6 // org.jruby.util.FileResource directory
         4: .line 382
            aload 0 /* context */
            aload 6 /* directory */
            aload 5 /* adjustedPath */
            invokestatic org.jruby.RubyDir.getEntries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/FileResource;Ljava/lang/String;)[Ljava/lang/String;
            astore 7 /* files */
        start local 7 // java.lang.String[] files
         5: .line 384
            aload 4 /* runtime */
            aload 7 /* files */
            arraylength
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 8 /* result */
        start local 8 // org.jruby.RubyArray result
         6: .line 385
            aload 7 /* files */
            dup
            astore 12
            arraylength
            istore 11
            iconst_0
            istore 10
            goto 14
      StackMap locals: org.jruby.runtime.ThreadContext java.lang.String org.jcodings.Encoding int org.jruby.Ruby java.lang.String org.jruby.util.FileResource java.lang.String[] org.jruby.RubyArray top int int java.lang.String[]
      StackMap stack:
         7: aload 12
            iload 10
            aaload
            astore 9 /* file */
        start local 9 // java.lang.String file
         8: .line 386
            iload 3 /* childrenOnly */
            ifeq 12
         9: .line 387
            aload 9 /* file */
            invokevirtual java.lang.String.length:()I
            istore 13 /* len */
        start local 13 // int len
        10: .line 388
            iload 13 /* len */
            iconst_1
            if_icmpne 11
            aload 9 /* file */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 11
            goto 13
        11: .line 389
      StackMap locals: org.jruby.runtime.ThreadContext java.lang.String org.jcodings.Encoding int org.jruby.Ruby java.lang.String org.jruby.util.FileResource java.lang.String[] org.jruby.RubyArray java.lang.String int int java.lang.String[] int
      StackMap stack:
            iload 13 /* len */
            iconst_2
            if_icmpne 12
            aload 9 /* file */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 12
            aload 9 /* file */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            bipush 46
            if_icmpne 12
            goto 13
        end local 13 // int len
        12: .line 392
      StackMap locals:
      StackMap stack:
            aload 8 /* result */
            aload 4 /* runtime */
            aload 9 /* file */
            aload 2 /* encoding */
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyArray.append:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            pop
        end local 9 // java.lang.String file
        13: .line 385
      StackMap locals: org.jruby.runtime.ThreadContext java.lang.String org.jcodings.Encoding int org.jruby.Ruby java.lang.String org.jruby.util.FileResource java.lang.String[] org.jruby.RubyArray top int int java.lang.String[]
      StackMap stack:
            iinc 10 1
      StackMap locals:
      StackMap stack:
        14: iload 10
            iload 11
            if_icmplt 7
        15: .line 394
            aload 8 /* result */
            areturn
        end local 8 // org.jruby.RubyArray result
        end local 7 // java.lang.String[] files
        end local 6 // org.jruby.util.FileResource directory
        end local 5 // java.lang.String adjustedPath
        end local 4 // org.jruby.Ruby runtime
        end local 3 // boolean childrenOnly
        end local 2 // org.jcodings.Encoding encoding
        end local 1 // java.lang.String path
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0       context  Lorg/jruby/runtime/ThreadContext;
            0   16     1          path  Ljava/lang/String;
            0   16     2      encoding  Lorg/jcodings/Encoding;
            0   16     3  childrenOnly  Z
            1   16     4       runtime  Lorg/jruby/Ruby;
            2   16     5  adjustedPath  Ljava/lang/String;
            4   16     6     directory  Lorg/jruby/util/FileResource;
            5   16     7         files  [Ljava/lang/String;
            6   16     8        result  Lorg/jruby/RubyArray;
            8   13     9          file  Ljava/lang/String;
           10   12    13           len  I
    MethodParameters:
              Name  Flags
      context       
      path          
      encoding      
      childrenOnly  final

  private static java.lang.String[] getEntries(org.jruby.runtime.ThreadContext, org.jruby.util.FileResource, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/FileResource;Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.FileResource dir
        start local 2 // java.lang.String path
         0: .line 400
            aload 1 /* dir */
            invokeinterface org.jruby.util.FileResource.isDirectory:()Z
            ifne 4
         1: .line 401
            aload 1 /* dir */
            invokeinterface org.jruby.util.FileResource.exists:()Z
            ifeq 3
         2: .line 402
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOTDIRError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOENTError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 406
      StackMap locals:
      StackMap stack:
            aload 1 /* dir */
            invokeinterface org.jruby.util.FileResource.canRead:()Z
            ifne 5
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* path */
            invokevirtual org.jruby.Ruby.newErrnoEACCESError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         5: .line 408
      StackMap locals:
      StackMap stack:
            aload 1 /* dir */
            invokeinterface org.jruby.util.FileResource.list:()[Ljava/lang/String;
            astore 3 /* list */
        start local 3 // java.lang.String[] list
         6: .line 410
            aload 3 /* list */
            ifnonnull 7
            getstatic org.jruby.RubyDir.NO_FILES:[Ljava/lang/String;
            goto 8
      StackMap locals: java.lang.String[]
      StackMap stack:
         7: aload 3 /* list */
      StackMap locals:
      StackMap stack: java.lang.String[]
         8: areturn
        end local 3 // java.lang.String[] list
        end local 2 // java.lang.String path
        end local 1 // org.jruby.util.FileResource dir
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  context  Lorg/jruby/runtime/ThreadContext;
            0    9     1      dir  Lorg/jruby/util/FileResource;
            0    9     2     path  Ljava/lang/String;
            6    9     3     list  [Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      dir      
      path     

  private static void checkDirIsTwoSlashesOnWindows(org.jruby.Ruby, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
         0: .line 415
            getstatic jnr.posix.util.Platform.IS_WINDOWS:Z
            ifeq 2
            ldc "//"
            aload 1 /* path */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 1
            ldc "\\\\"
            aload 1 /* path */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "Invalid argument - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* path */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newErrnoEINVALError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 418
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1     path  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      runtime  
      path     

  public static org.jruby.runtime.builtin.IRubyObject chdir(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=10, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 423
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 424
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 3
         2: .line 425
            aload 4 /* runtime */
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            goto 4
         3: .line 426
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 0 /* context */
            invokestatic org.jruby.RubyDir.getHomeDirectoryPath:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
         4: .line 424
      StackMap locals:
      StackMap stack: org.jruby.RubyString
            astore 5 /* path */
        start local 5 // org.jruby.RubyString path
         5: .line 428
            aload 4 /* runtime */
            aload 5 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            aconst_null
            invokestatic org.jruby.RubyFile.adjustRootPathOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* adjustedPath */
        start local 6 // java.lang.String adjustedPath
         6: .line 429
            aload 4 /* runtime */
            aload 6 /* adjustedPath */
            invokestatic org.jruby.RubyDir.checkDirIsTwoSlashesOnWindows:(Lorg/jruby/Ruby;Ljava/lang/String;)V
         7: .line 431
            aload 4 /* runtime */
            aload 6 /* adjustedPath */
            invokestatic org.jruby.RubyDir.getExistingDir:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            invokeinterface org.jruby.util.FileResource.canonicalPath:()Ljava/lang/String;
            astore 6 /* adjustedPath */
         8: .line 434
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 20
         9: .line 435
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            astore 8 /* oldCwd */
        start local 8 // java.lang.String oldCwd
        10: .line 437
            aload 4 /* runtime */
            aload 6 /* adjustedPath */
            invokevirtual org.jruby.Ruby.setCurrentDirectory:(Ljava/lang/String;)V
        11: .line 439
            aload 3 /* block */
            aload 0 /* context */
            aload 5 /* path */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* result */
        start local 7 // org.jruby.runtime.builtin.IRubyObject result
        12: .line 440
            goto 17
        end local 7 // org.jruby.runtime.builtin.IRubyObject result
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyString java.lang.String top java.lang.String
      StackMap stack: java.lang.Throwable
        13: astore 9
        14: .line 441
            aload 4 /* runtime */
            aload 8 /* oldCwd */
            invokestatic org.jruby.RubyDir.getExistingDir:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            pop
        15: .line 442
            aload 4 /* runtime */
            aload 8 /* oldCwd */
            invokevirtual org.jruby.Ruby.setCurrentDirectory:(Ljava/lang/String;)V
        16: .line 443
            aload 9
            athrow
        start local 7 // org.jruby.runtime.builtin.IRubyObject result
        17: .line 441
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject[] org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyString java.lang.String org.jruby.runtime.builtin.IRubyObject java.lang.String
      StackMap stack:
            aload 4 /* runtime */
            aload 8 /* oldCwd */
            invokestatic org.jruby.RubyDir.getExistingDir:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            pop
        18: .line 442
            aload 4 /* runtime */
            aload 8 /* oldCwd */
            invokevirtual org.jruby.Ruby.setCurrentDirectory:(Ljava/lang/String;)V
        end local 8 // java.lang.String oldCwd
        19: .line 444
            goto 22
        end local 7 // org.jruby.runtime.builtin.IRubyObject result
        20: .line 445
      StackMap locals:
      StackMap stack:
            aload 4 /* runtime */
            aload 6 /* adjustedPath */
            invokevirtual org.jruby.Ruby.setCurrentDirectory:(Ljava/lang/String;)V
        21: .line 446
            aload 4 /* runtime */
            iconst_0
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            astore 7 /* result */
        start local 7 // org.jruby.runtime.builtin.IRubyObject result
        22: .line 449
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 7 /* result */
            areturn
        end local 7 // org.jruby.runtime.builtin.IRubyObject result
        end local 6 // java.lang.String adjustedPath
        end local 5 // org.jruby.RubyString path
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0       context  Lorg/jruby/runtime/ThreadContext;
            0   23     1          recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     2          args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   23     3         block  Lorg/jruby/runtime/Block;
            1   23     4       runtime  Lorg/jruby/Ruby;
            5   23     5          path  Lorg/jruby/RubyString;
            6   23     6  adjustedPath  Ljava/lang/String;
           12   13     7        result  Lorg/jruby/runtime/builtin/IRubyObject;
           17   20     7        result  Lorg/jruby/runtime/builtin/IRubyObject;
           22   23     7        result  Lorg/jruby/runtime/builtin/IRubyObject;
           10   19     8        oldCwd  Ljava/lang/String;
      Exception table:
        from    to  target  type
          11    13      13  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(optional = 1, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     
      block    

  public static org.jruby.runtime.builtin.IRubyObject chroot(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject path
         0: .line 457
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            ldc "chroot not implemented: chroot is non-portable and is not supported."
            invokevirtual org.jruby.Ruby.newNotImplementedError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 1 // org.jruby.runtime.builtin.IRubyObject path
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  path  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"chroot"}, required = 1, meta = true)
    MethodParameters:
      Name  Flags
      recv  
      path  

  public static org.jruby.RubyArray children(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 465
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyDir.children:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"children"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.RubyArray children(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.builtin.IRubyObject opts
         0: .line 470
            aconst_null
            astore 4 /* encoding */
        start local 4 // org.jcodings.Encoding encoding
         1: .line 471
            aload 3 /* opts */
            instanceof org.jruby.RubyHash
            ifeq 5
         2: .line 472
            aload 0 /* context */
            aload 3 /* opts */
            checkcast org.jruby.RubyHash
            ldc "encoding"
            invokestatic org.jruby.ast.util.ArgsUtil.extractKeywordArg:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* encodingArg */
        start local 5 // org.jruby.runtime.builtin.IRubyObject encodingArg
         3: .line 473
            aload 5 /* encodingArg */
            ifnull 5
            aload 5 /* encodingArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 5
         4: .line 474
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 5 /* encodingArg */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 4 /* encoding */
        end local 5 // org.jruby.runtime.builtin.IRubyObject encodingArg
         5: .line 477
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            aload 4 /* encoding */
            ifnonnull 6
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getDefaultEncoding:()Lorg/jcodings/Encoding;
            astore 4 /* encoding */
         6: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            aload 4 /* encoding */
            iconst_1
            invokestatic org.jruby.RubyDir.entriesCommon:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jcodings/Encoding;Z)Lorg/jruby/RubyArray;
            areturn
        end local 4 // org.jcodings.Encoding encoding
        end local 3 // org.jruby.runtime.builtin.IRubyObject opts
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      context  Lorg/jruby/runtime/ThreadContext;
            0    7     1         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     2          arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     3         opts  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     4     encoding  Lorg/jcodings/Encoding;
            3    5     5  encodingArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"children"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      
      opts     

  public static org.jruby.runtime.builtin.IRubyObject rmdir(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject path
         0: .line 486
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* recv */
            aload 1 /* path */
            invokestatic org.jruby.RubyDir.rmdir19:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject path
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  path  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      recv  
      path  

  public static org.jruby.runtime.builtin.IRubyObject rmdir19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
         0: .line 491
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 492
            aload 3 /* runtime */
            aload 0 /* context */
            aload 2 /* path */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 4 /* cleanPath */
        start local 4 // org.jruby.RubyString cleanPath
         2: .line 493
            aload 3 /* runtime */
            aload 4 /* cleanPath */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            invokestatic org.jruby.RubyDir.rmdirCommon:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyFixnum;
            areturn
        end local 4 // org.jruby.RubyString cleanPath
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    context  Lorg/jruby/runtime/ThreadContext;
            0    3     1       recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2       path  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3    runtime  Lorg/jruby/Ruby;
            2    3     4  cleanPath  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"rmdir", "unlink", "delete"}, required = 1, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     

  private static org.jruby.RubyFixnum rmdirCommon(org.jruby.Ruby, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyFixnum;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
         0: .line 497
            aload 0 /* runtime */
            aload 1 /* path */
            invokestatic org.jruby.RubyDir.getDirForRmdir:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/JRubyFile;
            astore 2 /* directory */
        start local 2 // org.jruby.util.JRubyFile directory
         1: .line 500
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 2 /* directory */
            invokevirtual org.jruby.util.JRubyFile.toString:()Ljava/lang/String;
            invokeinterface jnr.posix.POSIX.rmdir:(Ljava/lang/String;)I
            ifge 3
         2: .line 501
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOTEMPTYError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 504
      StackMap locals: org.jruby.util.JRubyFile
      StackMap stack:
            aload 0 /* runtime */
            iconst_0
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 2 // org.jruby.util.JRubyFile directory
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0    runtime  Lorg/jruby/Ruby;
            0    4     1       path  Ljava/lang/String;
            1    4     2  directory  Lorg/jruby/util/JRubyFile;
    MethodParameters:
         Name  Flags
      runtime  
      path     

  public static org.jruby.runtime.builtin.IRubyObject each_child(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.Block block
         0: .line 514
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aconst_null
            aload 3 /* block */
            invokestatic org.jruby.RubyDir.eachChildCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jruby/RubyEncoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each_child"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      
      block    

  public static org.jruby.runtime.builtin.IRubyObject each_child(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.builtin.IRubyObject enc
        start local 4 // org.jruby.runtime.Block block
         0: .line 526
            aload 3 /* enc */
            instanceof org.jruby.RubyEncoding
            ifeq 3
         1: .line 527
            aload 3 /* enc */
            checkcast org.jruby.RubyEncoding
            astore 5 /* encoding */
        start local 5 // org.jruby.RubyEncoding encoding
         2: .line 528
            goto 4
        end local 5 // org.jruby.RubyEncoding encoding
         3: .line 529
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* enc */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncoding:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
            athrow
        start local 5 // org.jruby.RubyEncoding encoding
         4: .line 532
      StackMap locals: org.jruby.RubyEncoding
      StackMap stack:
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aload 5 /* encoding */
            aload 4 /* block */
            invokestatic org.jruby.RubyDir.eachChildCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jruby/RubyEncoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.RubyEncoding encoding
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject enc
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0   context  Lorg/jruby/runtime/ThreadContext;
            0    5     1      recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2       arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3       enc  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4     block  Lorg/jruby/runtime/Block;
            2    3     5  encoding  Lorg/jruby/RubyEncoding;
            4    5     5  encoding  Lorg/jruby/RubyEncoding;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each_child"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      
      enc      
      block    

  public static org.jruby.runtime.builtin.IRubyObject foreach(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.Block block
         0: .line 541
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* path */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aconst_null
            aload 3 /* block */
            invokestatic org.jruby.RubyDir.foreachCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"foreach"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      block    

  public static org.jruby.runtime.builtin.IRubyObject foreach(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
        start local 4 // org.jruby.runtime.Block block
         0: .line 546
            aconst_null
            astore 5 /* encoding */
        start local 5 // org.jcodings.Encoding encoding
         1: .line 548
            aload 3 /* encOpts */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 6
         2: .line 549
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* encOpts */
            invokestatic org.jruby.util.TypeConverter.checkHashType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* opts */
        start local 6 // org.jruby.runtime.builtin.IRubyObject opts
         3: .line 550
            aload 0 /* context */
            aload 6 /* opts */
            checkcast org.jruby.RubyHash
            ldc "encoding"
            invokestatic org.jruby.ast.util.ArgsUtil.extractKeywordArg:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7 /* encodingArg */
        start local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
         4: .line 551
            aload 7 /* encodingArg */
            ifnull 6
            aload 7 /* encodingArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 6
         5: .line 552
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 7 /* encodingArg */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            astore 5 /* encoding */
        end local 7 // org.jruby.runtime.builtin.IRubyObject encodingArg
        end local 6 // org.jruby.runtime.builtin.IRubyObject opts
         6: .line 556
      StackMap locals: org.jcodings.Encoding
      StackMap stack:
            aload 5 /* encoding */
            ifnonnull 7
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getDefaultFilesystemEncoding:()Lorg/jcodings/Encoding;
            astore 5 /* encoding */
         7: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* path */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aload 5 /* encoding */
            aload 4 /* block */
            invokestatic org.jruby.RubyDir.foreachCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jcodings.Encoding encoding
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0      context  Lorg/jruby/runtime/ThreadContext;
            0    8     1         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2         path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3      encOpts  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     4        block  Lorg/jruby/runtime/Block;
            1    8     5     encoding  Lorg/jcodings/Encoding;
            3    6     6         opts  Lorg/jruby/runtime/builtin/IRubyObject;
            4    6     7  encodingArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"foreach"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      encOpts  
      block    

  public static org.jruby.runtime.builtin.IRubyObject foreach19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.Block block
         0: .line 563
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* path */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aconst_null
            aload 3 /* block */
            invokestatic org.jruby.RubyDir.foreachCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      block    

  public static org.jruby.runtime.builtin.IRubyObject foreach19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.builtin.IRubyObject enc
        start local 4 // org.jruby.runtime.Block block
         0: .line 568
            aload 0 /* context */
            aload 1 /* recv */
            aload 0 /* context */
            aload 2 /* path */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 3 /* enc */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromObject:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jcodings/Encoding;
            aload 4 /* block */
            invokestatic org.jruby.RubyDir.foreachCommon:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject enc
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3      enc  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     4    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      enc      
      block    

  private static org.jruby.runtime.builtin.IRubyObject eachChildCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyString, org.jruby.RubyEncoding, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jruby/RubyEncoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.RubyString path
        start local 3 // org.jruby.RubyEncoding encoding
        start local 4 // org.jruby.runtime.Block block
         0: .line 572
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 5 /* runtime */
        start local 5 // org.jruby.Ruby runtime
         1: .line 573
            aload 4 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 7
         2: .line 574
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getDir:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 2 /* path */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyDir
            astore 6 /* dir */
        start local 6 // org.jruby.RubyDir dir
         3: .line 576
            aload 6 /* dir */
            aload 0 /* context */
            aload 3 /* encoding */
            ifnonnull 4
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultEncoding:()Lorg/jcodings/Encoding;
            goto 5
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyString org.jruby.RubyEncoding org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyDir
      StackMap stack: org.jruby.RubyDir org.jruby.runtime.ThreadContext
         4: aload 3 /* encoding */
            invokevirtual org.jruby.RubyEncoding.getEncoding:()Lorg/jcodings/Encoding;
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyString org.jruby.RubyEncoding org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyDir
      StackMap stack: org.jruby.RubyDir org.jruby.runtime.ThreadContext org.jcodings.Encoding
         5: aload 4 /* block */
            invokevirtual org.jruby.RubyDir.each_child:(Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 577
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // org.jruby.RubyDir dir
         7: .line 580
      StackMap locals:
      StackMap stack:
            aload 3 /* encoding */
            ifnonnull 9
         8: .line 581
            aload 5 /* runtime */
            aload 1 /* recv */
            ldc "each_child"
            aload 2 /* path */
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         9: .line 583
      StackMap locals:
      StackMap stack:
            aload 5 /* runtime */
            aload 1 /* recv */
            ldc "each_child"
            iconst_2
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 2 /* path */
            aastore
            dup
            iconst_1
            aload 3 /* encoding */
            aastore
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.Ruby runtime
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.RubyEncoding encoding
        end local 2 // org.jruby.RubyString path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0   context  Lorg/jruby/runtime/ThreadContext;
            0   10     1      recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     2      path  Lorg/jruby/RubyString;
            0   10     3  encoding  Lorg/jruby/RubyEncoding;
            0   10     4     block  Lorg/jruby/runtime/Block;
            1   10     5   runtime  Lorg/jruby/Ruby;
            3    7     6       dir  Lorg/jruby/RubyDir;
    MethodParameters:
          Name  Flags
      context   
      recv      
      path      
      encoding  
      block     

  private static org.jruby.runtime.builtin.IRubyObject foreachCommon(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyString, org.jcodings.Encoding, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.RubyString path
        start local 3 // org.jcodings.Encoding encoding
        start local 4 // org.jruby.runtime.Block block
         0: .line 587
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 5 /* runtime */
        start local 5 // org.jruby.Ruby runtime
         1: .line 588
            aload 4 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 7
         2: .line 589
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getDir:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 2 /* path */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyDir
            astore 6 /* dir */
        start local 6 // org.jruby.RubyDir dir
         3: .line 591
            aload 6 /* dir */
            aload 0 /* context */
            aload 3 /* encoding */
            ifnonnull 4
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getDefaultEncoding:()Lorg/jcodings/Encoding;
            goto 5
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyString org.jcodings.Encoding org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyDir
      StackMap stack: org.jruby.RubyDir org.jruby.runtime.ThreadContext
         4: aload 3 /* encoding */
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.RubyString org.jcodings.Encoding org.jruby.runtime.Block org.jruby.Ruby org.jruby.RubyDir
      StackMap stack: org.jruby.RubyDir org.jruby.runtime.ThreadContext org.jcodings.Encoding
         5: aload 4 /* block */
            invokevirtual org.jruby.RubyDir.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 592
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // org.jruby.RubyDir dir
         7: .line 595
      StackMap locals:
      StackMap stack:
            aload 3 /* encoding */
            ifnonnull 9
         8: .line 596
            aload 5 /* runtime */
            aload 1 /* recv */
            ldc "foreach"
            aload 2 /* path */
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         9: .line 599
      StackMap locals:
      StackMap stack:
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 3 /* encoding */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncoding:(Lorg/jcodings/Encoding;)Lorg/jruby/RubyEncoding;
            astore 6 /* rubyEncoding */
        start local 6 // org.jruby.runtime.builtin.IRubyObject rubyEncoding
        10: .line 600
            aload 5 /* runtime */
            aload 1 /* recv */
            ldc "foreach"
            iconst_2
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 2 /* path */
            aastore
            dup
            iconst_1
            aload 6 /* rubyEncoding */
            aastore
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // org.jruby.runtime.builtin.IRubyObject rubyEncoding
        end local 5 // org.jruby.Ruby runtime
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jcodings.Encoding encoding
        end local 2 // org.jruby.RubyString path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0       context  Lorg/jruby/runtime/ThreadContext;
            0   11     1          recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     2          path  Lorg/jruby/RubyString;
            0   11     3      encoding  Lorg/jcodings/Encoding;
            0   11     4         block  Lorg/jruby/runtime/Block;
            1   11     5       runtime  Lorg/jruby/Ruby;
            3    7     6           dir  Lorg/jruby/RubyDir;
           10   11     6  rubyEncoding  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
          Name  Flags
      context   
      recv      
      path      
      encoding  
      block     

  public static org.jruby.RubyString getwd(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
         0: .line 606
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 608
            aload 1 /* runtime */
            aload 1 /* runtime */
            invokestatic org.jruby.RubyDir.getCWD:(Lorg/jruby/Ruby;)Ljava/lang/String;
            invokestatic org.jruby.RubyString.newUnicodeString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            astore 2 /* pwd */
        start local 2 // org.jruby.RubyString pwd
         2: .line 609
            aload 2 /* pwd */
            iconst_1
            invokevirtual org.jruby.RubyString.setTaint:(Z)V
         3: .line 610
            aload 2 /* pwd */
            areturn
        end local 2 // org.jruby.RubyString pwd
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     1  runtime  Lorg/jruby/Ruby;
            2    4     2      pwd  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"getwd", "pwd"}, meta = true)
    MethodParameters:
      Name  Flags
      recv  

  public static org.jruby.runtime.builtin.IRubyObject home(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 618
            aload 2 /* args */
            arraylength
            ifle 1
            aload 2 /* args */
            iconst_0
            aaload
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpeq 1
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokestatic org.jruby.RubyDir.getHomeDirectoryPath:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 620
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokestatic org.jruby.RubyDir.getHomeDirectoryPath:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"home"}, optional = 1, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public static org.jruby.runtime.builtin.IRubyObject mkdir(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 630
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 631
            aload 3 /* runtime */
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 4 /* path */
        start local 4 // org.jruby.RubyString path
         2: .line 632
            aload 3 /* runtime */
            aload 4 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            aload 2 /* args */
            invokestatic org.jruby.RubyDir.mkdirCommon:(Lorg/jruby/Ruby;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.RubyString path
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3  runtime  Lorg/jruby/Ruby;
            2    3     4     path  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"mkdir"}, required = 1, optional = 1, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  public static org.jruby.runtime.builtin.IRubyObject mkdir(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject recv
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 637
            aload 0 /* recv */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 0 /* recv */
            aload 1 /* args */
            invokestatic org.jruby.RubyDir.mkdir:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.builtin.IRubyObject recv
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      recv  
      args  

  public static org.jruby.runtime.builtin.IRubyObject mkdir19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 642
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* args */
            invokestatic org.jruby.RubyDir.mkdir:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      args     

  private static org.jruby.runtime.builtin.IRubyObject mkdirCommon(org.jruby.Ruby, java.lang.String, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 646
            aload 1 /* path */
            ldc "uri:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 1
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoEACCESError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         1: .line 648
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            aload 0 /* runtime */
            invokestatic org.jruby.RubyDir.dirFromPath:(Ljava/lang/String;Lorg/jruby/Ruby;)Ljava/lang/String;
            astore 1 /* path */
         2: .line 649
            aload 0 /* runtime */
            aload 1 /* path */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            astore 3 /* res */
        start local 3 // org.jruby.util.FileResource res
         3: .line 650
            aload 3 /* res */
            invokeinterface org.jruby.util.FileResource.isDirectory:()Z
            ifeq 4
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoEEXISTError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 652
      StackMap locals: org.jruby.util.FileResource
      StackMap stack:
            aload 1 /* path */
            bipush 92
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         5: .line 653
            aload 4 /* name */
            invokestatic org.jruby.RubyFile.startsWithDriveLetterOnWindows:(Ljava/lang/String;)Z
            istore 5 /* startsWithDriveLetterOnWindows */
        start local 5 // boolean startsWithDriveLetterOnWindows
         6: .line 656
            iload 5 /* startsWithDriveLetterOnWindows */
            ifeq 11
         7: .line 658
            aload 1 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpne 8
            aload 0 /* runtime */
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            areturn
         8: .line 660
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmpne 10
            aload 1 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpeq 9
            aload 1 /* path */
            iconst_2
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 10
      StackMap locals:
      StackMap stack:
         9: aload 0 /* runtime */
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            areturn
        10: .line 662
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            invokevirtual java.lang.String.length:()I
            iconst_4
            if_icmpne 11
            aload 1 /* path */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 11
            aload 1 /* path */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 11
            aload 0 /* runtime */
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            areturn
        11: .line 665
      StackMap locals:
      StackMap stack:
            aload 3 /* res */
            ldc Ljava/io/File;
            invokeinterface org.jruby.util.FileResource.unwrap:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast java.io.File
            astore 6 /* newDir */
        start local 6 // java.io.File newDir
        12: .line 666
            getstatic java.io.File.separatorChar:C
            bipush 92
            if_icmpne 13
            new java.io.File
            dup
            aload 6 /* newDir */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 6 /* newDir */
        13: .line 668
      StackMap locals: java.io.File
      StackMap stack:
            aload 2 /* args */
            arraylength
            iconst_2
            if_icmpne 14
            aload 2 /* args */
            iconst_1
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToInteger:()Lorg/jruby/RubyInteger;
            invokevirtual org.jruby.RubyInteger.getLongValue:()J
            l2i
            goto 15
      StackMap locals:
      StackMap stack:
        14: sipush 511
      StackMap locals:
      StackMap stack: int
        15: istore 7 /* mode */
        start local 7 // int mode
        16: .line 670
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 6 /* newDir */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            iload 7 /* mode */
            invokeinterface jnr.posix.POSIX.mkdir:(Ljava/lang/String;I)I
            ifge 18
        17: .line 672
            aload 0 /* runtime */
            ldc "mkdir failed"
            invokevirtual org.jruby.Ruby.newSystemCallError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        18: .line 675
      StackMap locals: int
      StackMap stack:
            aload 0 /* runtime */
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            areturn
        end local 7 // int mode
        end local 6 // java.io.File newDir
        end local 5 // boolean startsWithDriveLetterOnWindows
        end local 4 // java.lang.String name
        end local 3 // org.jruby.util.FileResource res
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   19     0                         runtime  Lorg/jruby/Ruby;
            0   19     1                            path  Ljava/lang/String;
            0   19     2                            args  [Lorg/jruby/runtime/builtin/IRubyObject;
            3   19     3                             res  Lorg/jruby/util/FileResource;
            5   19     4                            name  Ljava/lang/String;
            6   19     5  startsWithDriveLetterOnWindows  Z
           12   19     6                          newDir  Ljava/io/File;
           16   19     7                            mode  I
    MethodParameters:
         Name  Flags
      runtime  
      path     
      args     

  public static org.jruby.runtime.builtin.IRubyObject open(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.Block block
         0: .line 685
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getDir:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 2 /* path */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyDir
            astore 4 /* directory */
        start local 4 // org.jruby.RubyDir directory
         1: .line 687
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
            aload 4 /* directory */
            areturn
         2: .line 690
      StackMap locals: org.jruby.RubyDir
      StackMap stack:
            aload 3 /* block */
            aload 0 /* context */
            aload 4 /* directory */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6
         3: .line 692
            aload 4 /* directory */
            invokevirtual org.jruby.RubyDir.close:()V
         4: .line 690
            aload 6
            areturn
         5: .line 691
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
         6: .line 692
            aload 4 /* directory */
            invokevirtual org.jruby.RubyDir.close:()V
         7: .line 693
            aload 5
            athrow
        end local 4 // org.jruby.RubyDir directory
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0    context  Lorg/jruby/runtime/ThreadContext;
            0    8     1       recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2       path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3      block  Lorg/jruby/runtime/Block;
            1    8     4  directory  Lorg/jruby/RubyDir;
      Exception table:
        from    to  target  type
           2     3       5  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"open"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      block    

  public static org.jruby.runtime.builtin.IRubyObject open(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
        start local 4 // org.jruby.runtime.Block block
         0: .line 698
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getDir:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            aload 2 /* path */
            aload 3 /* encOpts */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyClass.newInstance:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyDir
            astore 5 /* directory */
        start local 5 // org.jruby.RubyDir directory
         1: .line 700
            aload 4 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
            aload 5 /* directory */
            areturn
         2: .line 703
      StackMap locals: org.jruby.RubyDir
      StackMap stack:
            aload 4 /* block */
            aload 0 /* context */
            aload 5 /* directory */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 7
         3: .line 705
            aload 5 /* directory */
            invokevirtual org.jruby.RubyDir.close:()V
         4: .line 703
            aload 7
            areturn
         5: .line 704
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
         6: .line 705
            aload 5 /* directory */
            invokevirtual org.jruby.RubyDir.close:()V
         7: .line 706
            aload 6
            athrow
        end local 5 // org.jruby.RubyDir directory
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.builtin.IRubyObject encOpts
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0    context  Lorg/jruby/runtime/ThreadContext;
            0    8     1       recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2       path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     3    encOpts  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     4      block  Lorg/jruby/runtime/Block;
            1    8     5  directory  Lorg/jruby/RubyDir;
      Exception table:
        from    to  target  type
           2     3       5  any
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"open"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      encOpts  
      block    

  public static org.jruby.runtime.builtin.IRubyObject open19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject path
        start local 3 // org.jruby.runtime.Block block
         0: .line 711
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* path */
            aload 3 /* block */
            invokestatic org.jruby.RubyDir.open:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject path
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     path  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      path     
      block    

  public org.jruby.runtime.builtin.IRubyObject close(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 721
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.close:()V
         1: .line 722
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/RubyDir;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"close"})
    MethodParameters:
         Name  Flags
      context  

  public final void close();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 727
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDirIgnoreClosed:()V
         1: .line 728
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyDir.isOpen:Z
         2: .line 729
            return
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyDir;

  public org.jruby.runtime.builtin.IRubyObject each(org.jruby.runtime.ThreadContext, org.jcodings.Encoding, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jruby.runtime.Block block
         0: .line 735
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 737
            aload 0 /* this */
            getfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
            astore 4 /* contents */
        start local 4 // java.lang.String[] contents
         2: .line 738
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyDir.pos:I
            goto 5
         3: .line 739
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 3 /* block */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* contents */
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aaload
            aload 2 /* enc */
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         4: .line 738
            aload 0 /* this */
            dup
            getfield org.jruby.RubyDir.pos:I
            iconst_1
            iadd
            putfield org.jruby.RubyDir.pos:I
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aload 4 /* contents */
            arraylength
            if_icmplt 3
         6: .line 742
            aload 0 /* this */
            areturn
        end local 4 // java.lang.String[] contents
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/jruby/RubyDir;
            0    7     1   context  Lorg/jruby/runtime/ThreadContext;
            0    7     2       enc  Lorg/jcodings/Encoding;
            0    7     3     block  Lorg/jruby/runtime/Block;
            2    7     4  contents  [Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      enc      
      block    

  public org.jruby.runtime.builtin.IRubyObject each(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 750
            aload 2 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 1
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyDir.encoding:Lorg/jcodings/Encoding;
            aload 2 /* block */
            invokevirtual org.jruby.RubyDir.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            ldc "each"
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyDir;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each"})
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject each(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        start local 3 // org.jruby.runtime.Block block
         0: .line 755
            aload 2 /* encoding */
            instanceof org.jruby.RubyEncoding
            ifne 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* encoding */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncoding:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
            athrow
         1: .line 757
      StackMap locals:
      StackMap stack:
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifeq 2
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* encoding */
            checkcast org.jruby.RubyEncoding
            invokevirtual org.jruby.RubyEncoding.getEncoding:()Lorg/jcodings/Encoding;
            aload 3 /* block */
            invokevirtual org.jruby.RubyDir.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            ldc "each"
            aload 2 /* encoding */
            invokestatic org.jruby.RubyEnumerator.enumeratorize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/jruby/RubyDir;
            0    4     1   context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  encoding  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3     block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"each"})
    MethodParameters:
          Name  Flags
      context   
      encoding  
      block     

  public org.jruby.runtime.builtin.IRubyObject each19(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 762
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* block */
            invokevirtual org.jruby.RubyDir.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyDir;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject each19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        start local 3 // org.jruby.runtime.Block block
         0: .line 767
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* encoding */
            aload 3 /* block */
            invokevirtual org.jruby.RubyDir.each:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject encoding
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/RubyDir;
            0    1     1   context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  encoding  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     block  Lorg/jruby/runtime/Block;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      context   
      encoding  
      block     

  public org.jruby.runtime.builtin.IRubyObject each_child(org.jruby.runtime.ThreadContext, org.jcodings.Encoding, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jcodings.Encoding enc
        start local 3 // org.jruby.runtime.Block block
         0: .line 775
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 777
            aload 0 /* this */
            getfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
            astore 4 /* contents */
        start local 4 // java.lang.String[] contents
         2: .line 778
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyDir.pos:I
            goto 7
         3: .line 779
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 4 /* contents */
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aaload
            bipush 46
            invokestatic org.jruby.util.StringSupport.contentEquals:(Ljava/lang/CharSequence;I)Z
            ifeq 4
            goto 6
         4: .line 780
      StackMap locals:
      StackMap stack:
            aload 4 /* contents */
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aaload
            bipush 46
            bipush 46
            invokestatic org.jruby.util.StringSupport.contentEquals:(Ljava/lang/CharSequence;II)Z
            ifeq 5
            goto 6
         5: .line 781
      StackMap locals:
      StackMap stack:
            aload 3 /* block */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* contents */
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aaload
            aload 2 /* enc */
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 778
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.jruby.RubyDir.pos:I
            iconst_1
            iadd
            putfield org.jruby.RubyDir.pos:I
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aload 4 /* contents */
            arraylength
            if_icmplt 3
         8: .line 784
            aload 0 /* this */
            areturn
        end local 4 // java.lang.String[] contents
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jcodings.Encoding enc
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/jruby/RubyDir;
            0    9     1   context  Lorg/jruby/runtime/ThreadContext;
            0    9     2       enc  Lorg/jcodings/Encoding;
            0    9     3     block  Lorg/jruby/runtime/Block;
            2    9     4  contents  [Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      enc      
      block    

  public org.jruby.runtime.builtin.IRubyObject each_child(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block block
         0: .line 792
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            getfield org.jruby.RubyDir.encoding:Lorg/jcodings/Encoding;
            aload 2 /* block */
            invokevirtual org.jruby.RubyDir.each_child:(Lorg/jruby/runtime/ThreadContext;Lorg/jcodings/Encoding;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyDir;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      block    

  public org.jruby.runtime.builtin.IRubyObject inspect();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 798
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            astore 1 /* runtime */
        start local 1 // org.jruby.Ruby runtime
         1: .line 799
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* part */
        start local 2 // java.lang.StringBuilder part
         2: .line 800
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            astore 3 /* cname */
        start local 3 // java.lang.String cname
         3: .line 801
            aload 2 /* part */
            ldc "#<"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* cname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         4: .line 802
            aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            ifnull 5
            aload 2 /* part */
            aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 803
      StackMap locals: org.jruby.Ruby java.lang.StringBuilder java.lang.String
      StackMap stack:
            aload 2 /* part */
            bipush 62
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 805
            aload 1 /* runtime */
            aload 2 /* part */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 3 // java.lang.String cname
        end local 2 // java.lang.StringBuilder part
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/jruby/RubyDir;
            1    7     1  runtime  Lorg/jruby/Ruby;
            2    7     2     part  Ljava/lang/StringBuilder;
            3    7     3    cname  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()

  public org.jruby.RubyInteger tell();
    descriptor: ()Lorg/jruby/RubyInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 813
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 814
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyDir;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"tell", "pos"})

  public org.jruby.runtime.builtin.IRubyObject seek(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.builtin.IRubyObject newPos
         0: .line 824
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 826
            aload 0 /* this */
            aload 1 /* newPos */
            invokevirtual org.jruby.RubyDir.set_pos:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 827
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject newPos
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/RubyDir;
            0    3     1  newPos  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"seek"}, required = 1)
    MethodParameters:
        Name  Flags
      newPos  

  public org.jruby.runtime.builtin.IRubyObject set_pos(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.builtin.IRubyObject newPos
         0: .line 832
            aload 1 /* newPos */
            invokestatic org.jruby.RubyNumeric.fix2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 2 /* pos2 */
        start local 2 // int pos2
         1: .line 833
            iload 2 /* pos2 */
            iflt 2
            aload 0 /* this */
            iload 2 /* pos2 */
            putfield org.jruby.RubyDir.pos:I
         2: .line 834
      StackMap locals: int
      StackMap stack:
            aload 1 /* newPos */
            areturn
        end local 2 // int pos2
        end local 1 // org.jruby.runtime.builtin.IRubyObject newPos
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/jruby/RubyDir;
            0    3     1  newPos  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     2    pos2  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"pos="}, required = 1)
    MethodParameters:
        Name  Flags
      newPos  

  public org.jruby.runtime.builtin.IRubyObject path(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 839
            aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            ifnonnull 1
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/RubyDir;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"path", "to_path"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject to_path(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 844
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.RubyDir.path:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyDir;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod()
    MethodParameters:
         Name  Flags
      context  

  public java.lang.String getPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 848
            aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            ifnonnull 1
            aconst_null
            areturn
         1: .line 849
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.RubyDir.path:Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            areturn
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/RubyDir;

  public org.jruby.runtime.builtin.IRubyObject read();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 855
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 857
            aload 0 /* this */
            getfield org.jruby.RubyDir.snapshot:[Ljava/lang/String;
            astore 1 /* snapshot */
        start local 1 // java.lang.String[] snapshot
         2: .line 858
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aload 1 /* snapshot */
            arraylength
            if_icmplt 3
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 860
      StackMap locals: java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getRuntime:()Lorg/jruby/Ruby;
            aload 1 /* snapshot */
            aload 0 /* this */
            getfield org.jruby.RubyDir.pos:I
            aaload
            aload 0 /* this */
            getfield org.jruby.RubyDir.encoding:Lorg/jcodings/Encoding;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            astore 2 /* result */
        start local 2 // org.jruby.RubyString result
         4: .line 861
            aload 0 /* this */
            dup
            getfield org.jruby.RubyDir.pos:I
            iconst_1
            iadd
            putfield org.jruby.RubyDir.pos:I
         5: .line 862
            aload 2 /* result */
            areturn
        end local 2 // org.jruby.RubyString result
        end local 1 // java.lang.String[] snapshot
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/jruby/RubyDir;
            2    6     1  snapshot  [Ljava/lang/String;
            4    6     2    result  Lorg/jruby/RubyString;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read"})

  public org.jruby.runtime.builtin.IRubyObject rewind();
    descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyDir this
         0: .line 868
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.checkDir:()V
         1: .line 870
            aload 0 /* this */
            iconst_0
            putfield org.jruby.RubyDir.pos:I
         2: .line 871
            aload 0 /* this */
            areturn
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/RubyDir;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"rewind"})

  public static org.jruby.runtime.builtin.IRubyObject empty_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 876
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 877
            aload 3 /* runtime */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 4 /* path */
        start local 4 // org.jruby.RubyString path
         2: .line 878
            aload 3 /* runtime */
            aload 4 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            iconst_0
            invokevirtual org.jruby.Ruby.newFileStat:(Ljava/lang/String;Z)Lorg/jruby/RubyFileStat;
            astore 5 /* fileStat */
        start local 5 // org.jruby.RubyFileStat fileStat
         3: .line 879
            aload 5 /* fileStat */
            invokevirtual org.jruby.RubyFileStat.directory_p:()Lorg/jruby/RubyBoolean;
            invokevirtual org.jruby.RubyBoolean.isTrue:()Z
            istore 6 /* isDirectory */
        start local 6 // boolean isDirectory
         4: .line 880
            aload 3 /* runtime */
            iload 6 /* isDirectory */
            ifeq 5
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            invokestatic org.jruby.RubyDir.entries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokevirtual org.jruby.RubyArray.getLength:()I
            iconst_2
            if_icmpgt 5
            iconst_1
            goto 6
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.RubyString org.jruby.RubyFileStat int
      StackMap stack: org.jruby.Ruby
         5: iconst_0
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.RubyString org.jruby.RubyFileStat int
      StackMap stack: org.jruby.Ruby int
         6: invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 6 // boolean isDirectory
        end local 5 // org.jruby.RubyFileStat fileStat
        end local 4 // org.jruby.RubyString path
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      context  Lorg/jruby/runtime/ThreadContext;
            0    7     1         recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     2          arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     3      runtime  Lorg/jruby/Ruby;
            2    7     4         path  Lorg/jruby/RubyString;
            3    7     5     fileStat  Lorg/jruby/RubyFileStat;
            4    7     6  isDirectory  Z
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"empty?"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.runtime.builtin.IRubyObject exist(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 885
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 887
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            invokevirtual org.jruby.internal.runtime.GlobalVariables.get:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* exception */
        start local 4 // org.jruby.runtime.builtin.IRubyObject exception
         2: .line 888
            aload 3 /* runtime */
            aload 0 /* context */
            aload 2 /* arg */
            invokestatic org.jruby.RubyFile.get_path:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.StringSupport.checkEmbeddedNulls:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            astore 5 /* path */
        start local 5 // org.jruby.RubyString path
         3: .line 891
            aload 3 /* runtime */
            aload 5 /* path */
            invokevirtual org.jruby.RubyString.asJavaString:()Ljava/lang/String;
            iconst_0
            invokevirtual org.jruby.Ruby.newFileStat:(Ljava/lang/String;Z)Lorg/jruby/RubyFileStat;
            invokevirtual org.jruby.RubyFileStat.directory_p:()Lorg/jruby/RubyBoolean;
         4: areturn
         5: .line 892
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.RubyString
      StackMap stack: java.lang.Exception
            pop
         6: .line 894
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 4 /* exception */
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         7: .line 895
            aload 3 /* runtime */
            iconst_0
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 5 // org.jruby.RubyString path
        end local 4 // org.jruby.runtime.builtin.IRubyObject exception
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0    context  Lorg/jruby/runtime/ThreadContext;
            0    8     1       recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2        arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     3    runtime  Lorg/jruby/Ruby;
            2    8     4  exception  Lorg/jruby/runtime/builtin/IRubyObject;
            3    8     5       path  Lorg/jruby/RubyString;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Exception
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"exist?"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.runtime.builtin.IRubyObject exists_p(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 901
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.warningsEnabled:()Z
            ifeq 2
         1: .line 902
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "Dir.exists? is a deprecated name, use Dir.exist? instead"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
         2: .line 905
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            invokestatic org.jruby.RubyDir.exist:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"exists?"}, meta = true)
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public org.jruby.runtime.builtin.IRubyObject fileno(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 910
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Dir#fileno"
            invokevirtual org.jruby.Ruby.newNotImplementedError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyDir;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"fileno"}, notImplemented = true)
    MethodParameters:
         Name  Flags
      context  

  protected static org.jruby.util.FileResource getDir(org.jruby.Ruby, java.lang.String, boolean);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Z)Lorg/jruby/util/FileResource;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
        start local 2 // boolean mustExist
         0: .line 921
            aload 1 /* path */
            aload 0 /* runtime */
            invokestatic org.jruby.RubyDir.dirFromPath:(Ljava/lang/String;Lorg/jruby/Ruby;)Ljava/lang/String;
            astore 3 /* dir */
        start local 3 // java.lang.String dir
         1: .line 923
            aload 0 /* runtime */
            aload 3 /* dir */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            astore 4 /* result */
        start local 4 // org.jruby.util.FileResource result
         2: .line 925
            iload 2 /* mustExist */
            ifeq 4
            aload 4 /* result */
            ifnull 3
            aload 4 /* result */
            invokeinterface org.jruby.util.FileResource.exists:()Z
            ifne 4
         3: .line 926
      StackMap locals: java.lang.String org.jruby.util.FileResource
      StackMap stack:
            aload 0 /* runtime */
            aload 3 /* dir */
            invokevirtual org.jruby.Ruby.newErrnoENOENTError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 929
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            invokeinterface org.jruby.util.FileResource.isDirectory:()Z
            istore 5 /* isDirectory */
        start local 5 // boolean isDirectory
         5: .line 931
            iload 2 /* mustExist */
            ifeq 7
            iload 5 /* isDirectory */
            ifne 7
         6: .line 932
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOTDIRError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 935
      StackMap locals: int
      StackMap stack:
            iload 2 /* mustExist */
            ifne 9
            iload 5 /* isDirectory */
            ifeq 9
         8: .line 936
            aload 0 /* runtime */
            aload 3 /* dir */
            invokevirtual org.jruby.Ruby.newErrnoEEXISTError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         9: .line 939
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 5 // boolean isDirectory
        end local 4 // org.jruby.util.FileResource result
        end local 3 // java.lang.String dir
        end local 2 // boolean mustExist
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0      runtime  Lorg/jruby/Ruby;
            0   10     1         path  Ljava/lang/String;
            0   10     2    mustExist  Z
            1   10     3          dir  Ljava/lang/String;
            2   10     4       result  Lorg/jruby/util/FileResource;
            5   10     5  isDirectory  Z
    MethodParameters:
           Name  Flags
      runtime    final
      path       final
      mustExist  final

  private static org.jruby.util.FileResource getExistingDir(org.jruby.Ruby, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
         0: .line 943
            aload 0 /* runtime */
            aload 1 /* path */
            invokestatic org.jruby.util.JRubyFile.createResource:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/FileResource;
            astore 2 /* result */
        start local 2 // org.jruby.util.FileResource result
         1: .line 944
            aload 2 /* result */
            ifnull 2
            aload 2 /* result */
            invokeinterface org.jruby.util.FileResource.exists:()Z
            ifne 3
         2: .line 945
      StackMap locals: org.jruby.util.FileResource
      StackMap stack:
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOENTError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 947
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            invokeinterface org.jruby.util.FileResource.isDirectory:()Z
            ifne 5
         4: .line 948
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOTDIRError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         5: .line 950
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // org.jruby.util.FileResource result
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  runtime  Lorg/jruby/Ruby;
            0    6     1     path  Ljava/lang/String;
            1    6     2   result  Lorg/jruby/util/FileResource;
    MethodParameters:
         Name  Flags
      runtime  final
      path     final

  protected static org.jruby.util.JRubyFile getDirForRmdir(org.jruby.Ruby, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/util/JRubyFile;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String path
         0: .line 960
            aload 1 /* path */
            aload 0 /* runtime */
            invokestatic org.jruby.RubyDir.dirFromPath:(Ljava/lang/String;Lorg/jruby/Ruby;)Ljava/lang/String;
            astore 2 /* dir */
        start local 2 // java.lang.String dir
         1: .line 962
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentDirectory:()Ljava/lang/String;
            aload 2 /* dir */
            invokestatic org.jruby.util.JRubyFile.create:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/util/JRubyFile;
            astore 3 /* directory */
        start local 3 // org.jruby.util.JRubyFile directory
         2: .line 968
            aload 3 /* directory */
            invokevirtual org.jruby.util.JRubyFile.getParentFile:()Ljava/io/File;
            astore 4 /* parentFile */
        start local 4 // java.io.File parentFile
         3: .line 969
            aload 4 /* parentFile */
            invokevirtual java.io.File.exists:()Z
            ifeq 5
            aload 4 /* parentFile */
            invokevirtual java.io.File.canWrite:()Z
            ifne 5
         4: .line 970
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoEACCESError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         5: .line 975
      StackMap locals: java.lang.String org.jruby.util.JRubyFile java.io.File
      StackMap stack:
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 3 /* directory */
            invokevirtual org.jruby.util.JRubyFile.toString:()Ljava/lang/String;
            invokeinterface jnr.posix.POSIX.stat:(Ljava/lang/String;)Ljnr/posix/FileStat;
            astore 5 /* stat */
        start local 5 // jnr.posix.FileStat stat
         6: .line 978
            aload 5 /* stat */
            invokeinterface jnr.posix.FileStat.isDirectory:()Z
            ifne 7
            aload 0 /* runtime */
            aload 1 /* path */
            invokevirtual org.jruby.Ruby.newErrnoENOTDIRError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 980
      StackMap locals: jnr.posix.FileStat
      StackMap stack:
            aload 3 /* directory */
            areturn
        end local 5 // jnr.posix.FileStat stat
        end local 4 // java.io.File parentFile
        end local 3 // org.jruby.util.JRubyFile directory
        end local 2 // java.lang.String dir
        end local 1 // java.lang.String path
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0     runtime  Lorg/jruby/Ruby;
            0    8     1        path  Ljava/lang/String;
            1    8     2         dir  Ljava/lang/String;
            2    8     3   directory  Lorg/jruby/util/JRubyFile;
            3    8     4  parentFile  Ljava/io/File;
            6    8     5        stat  Ljnr/posix/FileStat;
    MethodParameters:
         Name  Flags
      runtime  final
      path     final

  private static java.lang.String dirFromPath(java.lang.String, org.jruby.Ruby);
    descriptor: (Ljava/lang/String;Lorg/jruby/Ruby;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.String path
        start local 1 // org.jruby.Ruby runtime
         0: .line 984
            aload 0 /* path */
            astore 2 /* dir */
        start local 2 // java.lang.String dir
         1: .line 985
            aload 0 /* path */
            invokestatic org.jruby.RubyFile.splitURI:(Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* pathParts */
        start local 3 // java.lang.String[] pathParts
         2: .line 986
            aload 3 /* pathParts */
            ifnull 7
         3: .line 987
            aload 3 /* pathParts */
            iconst_0
            aaload
            ldc "file:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
            aload 3 /* pathParts */
            iconst_1
            aaload
            invokevirtual java.lang.String.length:()I
            ifle 6
            aload 3 /* pathParts */
            iconst_1
            aaload
            ldc ".jar!/"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpne 6
         4: .line 988
            aload 3 /* pathParts */
            iconst_1
            aaload
            astore 2 /* dir */
         5: .line 989
            goto 7
         6: .line 990
      StackMap locals: java.lang.String java.lang.String[]
      StackMap stack:
            aload 1 /* runtime */
            aload 2 /* dir */
            invokevirtual org.jruby.Ruby.newErrnoENOTDIRError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 993
      StackMap locals:
      StackMap stack:
            aload 2 /* dir */
            areturn
        end local 3 // java.lang.String[] pathParts
        end local 2 // java.lang.String dir
        end local 1 // org.jruby.Ruby runtime
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       path  Ljava/lang/String;
            0    8     1    runtime  Lorg/jruby/Ruby;
            1    8     2        dir  Ljava/lang/String;
            2    8     3  pathParts  [Ljava/lang/String;
    Exceptions:
      throws org.jruby.exceptions.RaiseException
    MethodParameters:
         Name  Flags
      path     final
      runtime  final

  private static java.lang.String[] list(org.jruby.util.FileResource);
    descriptor: (Lorg/jruby/util/FileResource;)[Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.util.FileResource directory
         0: .line 997
            aload 0 /* directory */
            invokeinterface org.jruby.util.FileResource.list:()[Ljava/lang/String;
            astore 1 /* contents */
        start local 1 // java.lang.String[] contents
         1: .line 1000
            aload 1 /* contents */
            ifnonnull 2
            getstatic org.jruby.RubyDir.NO_FILES:[Ljava/lang/String;
            goto 3
      StackMap locals: java.lang.String[]
      StackMap stack:
         2: aload 1 /* contents */
      StackMap locals:
      StackMap stack: java.lang.String[]
         3: areturn
        end local 1 // java.lang.String[] contents
        end local 0 // org.jruby.util.FileResource directory
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  directory  Lorg/jruby/util/FileResource;
            1    4     1   contents  [Ljava/lang/String;
    MethodParameters:
           Name  Flags
      directory  

  protected static java.util.List<java.lang.String> getContents(org.jruby.util.FileResource);
    descriptor: (Lorg/jruby/util/FileResource;)Ljava/util/List;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.jruby.util.FileResource directory
         0: .line 1007
            aload 0 /* directory */
            invokeinterface org.jruby.util.FileResource.list:()[Ljava/lang/String;
            astore 1 /* contents */
        start local 1 // java.lang.String[] contents
         1: .line 1012
            aload 1 /* contents */
            ifnull 4
         2: .line 1013
            aload 1 /* contents */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            astore 2 /* result */
        start local 2 // java.util.List result
         3: .line 1014
            goto 5
        end local 2 // java.util.List result
         4: .line 1016
      StackMap locals: java.lang.String[]
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 2 /* result */
        start local 2 // java.util.List result
         5: .line 1018
      StackMap locals: java.util.List
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // java.util.List result
        end local 1 // java.lang.String[] contents
        end local 0 // org.jruby.util.FileResource directory
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  directory  Lorg/jruby/util/FileResource;
            1    6     1   contents  [Ljava/lang/String;
            3    4     2     result  Ljava/util/List<Ljava/lang/String;>;
            5    6     2     result  Ljava/util/List<Ljava/lang/String;>;
    Signature: (Lorg/jruby/util/FileResource;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
           Name  Flags
      directory  

  protected static java.util.List<org.jruby.RubyString> getContents(org.jruby.util.FileResource, org.jruby.Ruby);
    descriptor: (Lorg/jruby/util/FileResource;Lorg/jruby/Ruby;)Ljava/util/List;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.jruby.util.FileResource directory
        start local 1 // org.jruby.Ruby runtime
         0: .line 1025
            aload 0 /* directory */
            invokeinterface org.jruby.util.FileResource.list:()[Ljava/lang/String;
            astore 2 /* contents */
        start local 2 // java.lang.String[] contents
         1: .line 1028
            aload 2 /* contents */
            ifnull 9
         2: .line 1029
            new java.util.ArrayList
            dup
            aload 2 /* contents */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 3 /* result */
        start local 3 // java.util.List result
         3: .line 1030
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 1031
      StackMap locals: java.lang.String[] java.util.List int
      StackMap stack:
            aload 3 /* result */
            aload 1 /* runtime */
            aload 2 /* contents */
            iload 4 /* i */
            aaload
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 1030
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 2 /* contents */
            arraylength
            if_icmplt 5
        end local 4 // int i
         8: .line 1033
            goto 10
        end local 3 // java.util.List result
         9: .line 1035
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 3 /* result */
        start local 3 // java.util.List result
        10: .line 1038
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.util.List result
        end local 2 // java.lang.String[] contents
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.util.FileResource directory
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0  directory  Lorg/jruby/util/FileResource;
            0   11     1    runtime  Lorg/jruby/Ruby;
            1   11     2   contents  [Ljava/lang/String;
            3    9     3     result  Ljava/util/List<Lorg/jruby/RubyString;>;
           10   11     3     result  Ljava/util/List<Lorg/jruby/RubyString;>;
            4    8     4          i  I
    Signature: (Lorg/jruby/util/FileResource;Lorg/jruby/Ruby;)Ljava/util/List<Lorg/jruby/RubyString;>;
    MethodParameters:
           Name  Flags
      directory  
      runtime    

  public static org.jruby.runtime.builtin.IRubyObject getHomeDirectoryPath(org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String user
         0: .line 1054
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1058
            aload 2 /* runtime */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getPosix:()Ljnr/posix/POSIX;
            aload 1 /* user */
            invokeinterface jnr.posix.POSIX.getpwnam:(Ljava/lang/String;)Ljnr/posix/Passwd;
            invokeinterface jnr.posix.Passwd.getHome:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
         2: areturn
         3: .line 1059
      StackMap locals: org.jruby.runtime.ThreadContext java.lang.String org.jruby.Ruby
      StackMap stack: java.lang.Exception
            pop
         4: .line 1063
            new java.io.FileInputStream
            dup
            ldc "/etc/passwd"
            invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
            astore 4 /* stream */
        start local 4 // java.io.FileInputStream stream
         5: .line 1064
            aload 4 /* stream */
            invokevirtual java.io.FileInputStream.available:()I
            istore 5 /* readBytes */
        start local 5 // int readBytes
         6: .line 1065
            iload 5 /* readBytes */
            newarray 8
            astore 6 /* bytes */
        start local 6 // byte[] bytes
         7: .line 1066
            aload 4 /* stream */
            aload 6 /* bytes */
            invokevirtual java.io.FileInputStream.read:([B)I
            istore 5 /* readBytes */
         8: .line 1067
            aload 4 /* stream */
            invokevirtual java.io.FileInputStream.close:()V
         9: .line 1068
            new java.lang.String
            dup
            aload 6 /* bytes */
            iconst_0
            iload 5 /* readBytes */
            invokespecial java.lang.String.<init>:([BII)V
            astore 3 /* passwd */
        end local 6 // byte[] bytes
        end local 5 // int readBytes
        end local 4 // java.io.FileInputStream stream
        start local 3 // java.lang.String passwd
        10: .line 1069
            goto 13
        end local 3 // java.lang.String passwd
      StackMap locals:
      StackMap stack: java.io.IOException
        11: pop
        12: .line 1070
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        start local 3 // java.lang.String passwd
        13: .line 1073
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* passwd */
            bipush 10
            invokestatic org.jruby.util.StringSupport.split:(Ljava/lang/String;C)Ljava/util/List;
            astore 4 /* rows */
        start local 4 // java.util.List rows
        14: .line 1074
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        15: goto 20
        16: .line 1075
      StackMap locals: java.util.List int
      StackMap stack:
            aload 4 /* rows */
            iload 5 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            bipush 58
            invokestatic org.jruby.util.StringSupport.split:(Ljava/lang/String;C)Ljava/util/List;
            astore 6 /* fields */
        start local 6 // java.util.List fields
        17: .line 1076
            aload 6 /* fields */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            aload 1 /* user */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
        18: .line 1077
            aload 2 /* runtime */
            aload 6 /* fields */
            iconst_5
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 6 // java.util.List fields
        19: .line 1074
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 5 /* i */
            aload 4 /* rows */
            invokeinterface java.util.List.size:()I
            if_icmplt 16
        end local 5 // int i
        end local 4 // java.util.List rows
        end local 3 // java.lang.String passwd
        21: .line 1082
            aload 2 /* runtime */
            new java.lang.StringBuilder
            dup
            ldc "user "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* user */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " doesn't exist"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.lang.String user
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0    context  Lorg/jruby/runtime/ThreadContext;
            0   22     1       user  Ljava/lang/String;
            1   22     2    runtime  Lorg/jruby/Ruby;
           10   11     3     passwd  Ljava/lang/String;
           13   21     3     passwd  Ljava/lang/String;
            5   10     4     stream  Ljava/io/FileInputStream;
            6   10     5  readBytes  I
            7   10     6      bytes  [B
           14   21     4       rows  Ljava/util/List<Ljava/lang/String;>;
           15   21     5          i  I
           17   19     6     fields  Ljava/util/List<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
           4    10      11  Class java.io.IOException
    MethodParameters:
         Name  Flags
      context  
      user     

  public static org.jruby.RubyString getHomeDirectoryPath(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 1088
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.RubyDir.HOME:Lorg/jruby/util/ByteList;
            invokestatic org.jruby.RubyString.newStringShared:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;)Lorg/jruby/RubyString;
            astore 1 /* homeKey */
        start local 1 // org.jruby.RubyString homeKey
         1: .line 1089
            aload 0 /* context */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getENV:()Lorg/jruby/RubyHash;
            aload 0 /* context */
            aload 1 /* homeKey */
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyDir.getHomeDirectoryPath:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
            areturn
        end local 1 // org.jruby.RubyString homeKey
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            1    2     1  homeKey  Lorg/jruby/RubyString;
    MethodParameters:
         Name  Flags
      context  

  static org.jruby.RubyString getHomeDirectoryPath(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject home
         0: .line 1095
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1097
            aload 1 /* home */
            ifnull 2
            aload 1 /* home */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 4
         2: .line 1098
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            ldc "ENV_JAVA"
            invokevirtual org.jruby.RubyClass.getConstant:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* ENV_JAVA */
        start local 3 // org.jruby.runtime.builtin.IRubyObject ENV_JAVA
         3: .line 1099
            aload 3 /* ENV_JAVA */
            aload 0 /* context */
            ldc "[]"
            aload 2 /* runtime */
            getstatic org.jruby.RubyDir.user_home:Lorg/jruby/util/ByteList;
            getstatic org.jruby.RubyString.UTF8:Lorg/jcodings/specific/UTF8Encoding;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jcodings/Encoding;)Lorg/jruby/RubyString;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* home */
        end local 3 // org.jruby.runtime.builtin.IRubyObject ENV_JAVA
         4: .line 1102
      StackMap locals:
      StackMap stack:
            aload 1 /* home */
            ifnull 5
            aload 1 /* home */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 6
         5: .line 1103
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getENV:()Lorg/jruby/RubyHash;
            aload 0 /* context */
            aload 2 /* runtime */
            ldc "LOGDIR"
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* home */
         6: .line 1106
      StackMap locals:
      StackMap stack:
            aload 1 /* home */
            ifnull 7
            aload 1 /* home */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 8
         7: .line 1107
      StackMap locals:
      StackMap stack:
            aload 2 /* runtime */
            ldc "user.home/LOGDIR not set"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         8: .line 1110
      StackMap locals:
      StackMap stack:
            aload 1 /* home */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyString
            areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject home
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0   context  Lorg/jruby/runtime/ThreadContext;
            0    9     1      home  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     2   runtime  Lorg/jruby/Ruby;
            3    4     3  ENV_JAVA  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      home     

  public <T> T toJava(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.RubyDir this
        start local 1 // java.lang.Class target
         0: .line 1115
            aload 1 /* target */
            ldc Ljava/io/File;
            if_acmpne 5
         1: .line 1116
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getPath:()Ljava/lang/String;
            astore 2 /* path */
        start local 2 // java.lang.String path
         2: .line 1117
            aload 2 /* path */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: new java.io.File
            dup
            aload 2 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
      StackMap locals:
      StackMap stack: java.io.File
         4: areturn
        end local 2 // java.lang.String path
         5: .line 1119
      StackMap locals:
      StackMap stack:
            aload 1 /* target */
            ldc Ljava/nio/file/Path;
            if_acmpeq 6
            aload 1 /* target */
            ldc Ljava/nio/file/Watchable;
            if_acmpne 10
         6: .line 1120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.RubyDir.getPath:()Ljava/lang/String;
            astore 2 /* path */
        start local 2 // java.lang.String path
         7: .line 1121
            aload 2 /* path */
            ifnonnull 8
            aconst_null
            goto 9
      StackMap locals: java.lang.String
      StackMap stack:
         8: invokestatic java.nio.file.FileSystems.getDefault:()Ljava/nio/file/FileSystem;
            aload 2 /* path */
            iconst_0
            anewarray java.lang.String
            invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
      StackMap locals:
      StackMap stack: java.nio.file.Path
         9: areturn
        end local 2 // java.lang.String path
        10: .line 1123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* target */
            invokespecial org.jruby.RubyObject.toJava:(Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Class target
        end local 0 // org.jruby.RubyDir this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/jruby/RubyDir;
            0   11     1  target  Ljava/lang/Class<TT;>;
            2    5     2    path  Ljava/lang/String;
            7   10     2    path  Ljava/lang/String;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
        Name  Flags
      target  

  public static org.jruby.RubyArray entries19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 1128
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            invokestatic org.jruby.RubyDir.entries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      

  public static org.jruby.RubyArray entries19(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject recv
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
        start local 3 // org.jruby.runtime.builtin.IRubyObject opts
         0: .line 1133
            aload 0 /* context */
            aload 1 /* recv */
            aload 2 /* arg */
            aload 3 /* opts */
            invokestatic org.jruby.RubyDir.entries:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject opts
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.runtime.builtin.IRubyObject recv
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     recv  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      arg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     opts  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      context  
      recv     
      arg      
      opts     
}
SourceFile: "RubyDir.java"
NestMembers:
  org.jruby.RubyDir$1
InnerClasses:
  org.jruby.RubyDir$1
  public StringConverter = org.jruby.javasupport.JavaUtil$StringConverter of org.jruby.javasupport.JavaUtil
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"Dir"}, include = {"Enumerable"})