public interface org.graalvm.polyglot.io.FileSystem
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.polyglot.io.FileSystem
  super_class: java.lang.Object
{
  public abstract java.nio.file.Path parsePath(java.net.URI);
    descriptor: (Ljava/net/URI;)Ljava/nio/file/Path;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      uri   

  public abstract java.nio.file.Path parsePath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/nio/file/Path;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract void checkAccess(java.nio.file.Path, java.util.Set<? extends java.nio.file.AccessMode>, java.nio.file.LinkOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/LinkOption;)V
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;Ljava/util/Set<+Ljava/nio/file/AccessMode;>;[Ljava/nio/file/LinkOption;)V
    MethodParameters:
             Name  Flags
      path         
      modes        
      linkOptions  

  public abstract void createDirectory(java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>[]);
    descriptor: (Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)V
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute<*>;)V
    MethodParameters:
       Name  Flags
      dir    
      attrs  

  public abstract void delete(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  public abstract java.nio.channels.SeekableByteChannel newByteChannel(java.nio.file.Path, java.util.Set<? extends java.nio.file.OpenOption>, java.nio.file.attribute.FileAttribute<?>[]);
    descriptor: (Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/SeekableByteChannel;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;Ljava/util/Set<+Ljava/nio/file/OpenOption;>;[Ljava/nio/file/attribute/FileAttribute<*>;)Ljava/nio/channels/SeekableByteChannel;
    MethodParameters:
         Name  Flags
      path     
      options  
      attrs    

  public abstract java.nio.file.DirectoryStream<java.nio.file.Path> newDirectoryStream(java.nio.file.Path, java.nio.file.DirectoryStream$Filter<? super java.nio.file.Path>);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/DirectoryStream$Filter;)Ljava/nio/file/DirectoryStream;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;Ljava/nio/file/DirectoryStream$Filter<-Ljava/nio/file/Path;>;)Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
    MethodParameters:
        Name  Flags
      dir     
      filter  

  public abstract java.nio.file.Path toAbsolutePath(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      path  

  public abstract java.nio.file.Path toRealPath(java.nio.file.Path, java.nio.file.LinkOption[]);
    descriptor: (Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      path         
      linkOptions  

  public abstract java.util.Map<java.lang.String, java.lang.Object> readAttributes(java.nio.file.Path, java.lang.String, java.nio.file.LinkOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/util/Map;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
    MethodParameters:
            Name  Flags
      path        
      attributes  
      options     

  public void setAttribute(java.nio.file.Path, java.lang.String, java.lang.Object, java.nio.file.LinkOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/Object;[Ljava/nio/file/LinkOption;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path path
        start local 2 // java.lang.String attribute
        start local 3 // java.lang.Object value
        start local 4 // java.nio.file.LinkOption[] options
         0: .line 234
            new java.lang.UnsupportedOperationException
            dup
            ldc "Setting attributes is not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.nio.file.LinkOption[] options
        end local 3 // java.lang.Object value
        end local 2 // java.lang.String attribute
        end local 1 // java.nio.file.Path path
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/graalvm/polyglot/io/FileSystem;
            0    1     1       path  Ljava/nio/file/Path;
            0    1     2  attribute  Ljava/lang/String;
            0    1     3      value  Ljava/lang/Object;
            0    1     4    options  [Ljava/nio/file/LinkOption;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      path       
      attribute  
      value      
      options    

  public void copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path source
        start local 2 // java.nio.file.Path target
        start local 3 // java.nio.file.CopyOption[] options
         0: .line 255
            aload 1 /* source */
            aload 2 /* target */
            aload 0 /* this */
            aload 3 /* options */
            invokestatic org.graalvm.polyglot.io.IOHelper.copy:(Ljava/nio/file/Path;Ljava/nio/file/Path;Lorg/graalvm/polyglot/io/FileSystem;[Ljava/nio/file/CopyOption;)V
         1: .line 256
            return
        end local 3 // java.nio.file.CopyOption[] options
        end local 2 // java.nio.file.Path target
        end local 1 // java.nio.file.Path source
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/graalvm/polyglot/io/FileSystem;
            0    2     1   source  Ljava/nio/file/Path;
            0    2     2   target  Ljava/nio/file/Path;
            0    2     3  options  [Ljava/nio/file/CopyOption;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      source   
      target   
      options  

  public void move(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path source
        start local 2 // java.nio.file.Path target
        start local 3 // java.nio.file.CopyOption[] options
         0: .line 278
            aload 1 /* source */
            aload 2 /* target */
            aload 0 /* this */
            aload 3 /* options */
            invokestatic org.graalvm.polyglot.io.IOHelper.move:(Ljava/nio/file/Path;Ljava/nio/file/Path;Lorg/graalvm/polyglot/io/FileSystem;[Ljava/nio/file/CopyOption;)V
         1: .line 279
            return
        end local 3 // java.nio.file.CopyOption[] options
        end local 2 // java.nio.file.Path target
        end local 1 // java.nio.file.Path source
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/graalvm/polyglot/io/FileSystem;
            0    2     1   source  Ljava/nio/file/Path;
            0    2     2   target  Ljava/nio/file/Path;
            0    2     3  options  [Ljava/nio/file/CopyOption;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      source   
      target   
      options  

  public void createLink(java.nio.file.Path, java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path link
        start local 2 // java.nio.file.Path existing
         0: .line 293
            new java.lang.UnsupportedOperationException
            dup
            ldc "Links are not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.nio.file.Path existing
        end local 1 // java.nio.file.Path link
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/polyglot/io/FileSystem;
            0    1     1      link  Ljava/nio/file/Path;
            0    1     2  existing  Ljava/nio/file/Path;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      link      
      existing  

  public void createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>[]);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path link
        start local 2 // java.nio.file.Path target
        start local 3 // java.nio.file.attribute.FileAttribute[] attrs
         0: .line 309
            new java.lang.UnsupportedOperationException
            dup
            ldc "Links are not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.nio.file.attribute.FileAttribute[] attrs
        end local 2 // java.nio.file.Path target
        end local 1 // java.nio.file.Path link
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/graalvm/polyglot/io/FileSystem;
            0    1     1    link  Ljava/nio/file/Path;
            0    1     2  target  Ljava/nio/file/Path;
            0    1     3   attrs  [Ljava/nio/file/attribute/FileAttribute;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute<*>;)V
    MethodParameters:
        Name  Flags
      link    
      target  
      attrs   

  public java.nio.file.Path readSymbolicLink(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path link
         0: .line 324
            new java.lang.UnsupportedOperationException
            dup
            ldc "Links are not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.nio.file.Path link
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/io/FileSystem;
            0    1     1  link  Ljava/nio/file/Path;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      link  

  public void setCurrentWorkingDirectory(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path currentWorkingDirectory
         0: .line 340
            new java.lang.UnsupportedOperationException
            dup
            ldc "Setting current working directory is not supported."
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.nio.file.Path currentWorkingDirectory
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0                     this  Lorg/graalvm/polyglot/io/FileSystem;
            0    1     1  currentWorkingDirectory  Ljava/nio/file/Path;
    MethodParameters:
                         Name  Flags
      currentWorkingDirectory  

  public java.lang.String getSeparator();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.polyglot.io.FileSystem this
         0: .line 351
            aload 0 /* this */
            ldc ""
            invokeinterface org.graalvm.polyglot.io.FileSystem.parsePath:(Ljava/lang/String;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.getFileSystem:()Ljava/nio/file/FileSystem;
            invokevirtual java.nio.file.FileSystem.getSeparator:()Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/io/FileSystem;

  public java.lang.String getPathSeparator();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.polyglot.io.FileSystem this
         0: .line 362
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/io/FileSystem;

  public java.lang.String getMimeType(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path path
         0: .line 375
            aload 1 /* path */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 376
            aconst_null
            areturn
        end local 1 // java.nio.file.Path path
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/polyglot/io/FileSystem;
            0    2     1  path  Ljava/nio/file/Path;
    MethodParameters:
      Name  Flags
      path  

  public java.nio.charset.Charset getEncoding(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/nio/charset/Charset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path path
         0: .line 389
            aload 1 /* path */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 390
            aconst_null
            areturn
        end local 1 // java.nio.file.Path path
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/polyglot/io/FileSystem;
            0    2     1  path  Ljava/nio/file/Path;
    MethodParameters:
      Name  Flags
      path  

  public java.nio.file.Path getTempDirectory();
    descriptor: ()Ljava/nio/file/Path;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.polyglot.io.FileSystem this
         0: .line 399
            new java.lang.UnsupportedOperationException
            dup
            ldc "Temporary directories not supported"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/polyglot/io/FileSystem;

  public boolean isSameFile(java.nio.file.Path, java.nio.file.Path, java.nio.file.LinkOption[]);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.polyglot.io.FileSystem this
        start local 1 // java.nio.file.Path path1
        start local 2 // java.nio.file.Path path2
        start local 3 // java.nio.file.LinkOption[] options
         0: .line 422
            aload 0 /* this */
            aload 1 /* path1 */
            invokeinterface org.graalvm.polyglot.io.FileSystem.toAbsolutePath:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
            aload 0 /* this */
            aload 2 /* path2 */
            invokeinterface org.graalvm.polyglot.io.FileSystem.toAbsolutePath:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 423
            iconst_1
            ireturn
         2: .line 425
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path1 */
            aload 3 /* options */
            invokeinterface org.graalvm.polyglot.io.FileSystem.toRealPath:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
            aload 0 /* this */
            aload 2 /* path2 */
            aload 3 /* options */
            invokeinterface org.graalvm.polyglot.io.FileSystem.toRealPath:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 3 // java.nio.file.LinkOption[] options
        end local 2 // java.nio.file.Path path2
        end local 1 // java.nio.file.Path path1
        end local 0 // org.graalvm.polyglot.io.FileSystem this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/polyglot/io/FileSystem;
            0    3     1    path1  Ljava/nio/file/Path;
            0    3     2    path2  Ljava/nio/file/Path;
            0    3     3  options  [Ljava/nio/file/LinkOption;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      path1    
      path2    
      options  

  public static org.graalvm.polyglot.io.FileSystem newDefaultFileSystem();
    descriptor: ()Lorg/graalvm/polyglot/io/FileSystem;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 486
            getstatic org.graalvm.polyglot.io.IOHelper.IMPL:Lorg/graalvm/polyglot/impl/AbstractPolyglotImpl;
            invokevirtual org.graalvm.polyglot.impl.AbstractPolyglotImpl.newDefaultFileSystem:()Lorg/graalvm/polyglot/io/FileSystem;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "FileSystem.java"
InnerClasses:
  public abstract Filter = java.nio.file.DirectoryStream$Filter of java.nio.file.DirectoryStream