class com.sun.tools.javac.file.PathFileObject$DirectoryFileObject extends com.sun.tools.javac.file.PathFileObject
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.file.PathFileObject$DirectoryFileObject
super_class: com.sun.tools.javac.file.PathFileObject
{
private final java.nio.file.Path userPackageRootDir;
descriptor: Ljava/nio/file/Path;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.file.RelativePath relativePath;
descriptor: Lcom/sun/tools/javac/file/RelativePath;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(com.sun.tools.javac.file.BaseFileManager, java.nio.file.Path, java.nio.file.Path, com.sun.tools.javac.file.RelativePath);
descriptor: (Lcom/sun/tools/javac/file/BaseFileManager;Ljava/nio/file/Path;Ljava/nio/file/Path;Lcom/sun/tools/javac/file/RelativePath;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
invokespecial com.sun.tools.javac.file.PathFileObject.<init>:(Lcom/sun/tools/javac/file/BaseFileManager;Ljava/nio/file/Path;)V
1: aload 0
aload 3
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.file.Path
putfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.userPackageRootDir:Ljava/nio/file/Path;
2: aload 0
aload 4
putfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.relativePath:Lcom/sun/tools/javac/file/RelativePath;
3: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/file/PathFileObject$DirectoryFileObject;
0 4 1 fileManager Lcom/sun/tools/javac/file/BaseFileManager;
0 4 2 path Ljava/nio/file/Path;
0 4 3 userPackageRootDir Ljava/nio/file/Path;
0 4 4 relativePath Lcom/sun/tools/javac/file/RelativePath;
MethodParameters:
Name Flags
fileManager
path
userPackageRootDir
relativePath
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.relativePath:Lcom/sun/tools/javac/file/RelativePath;
aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.userPackageRootDir:Ljava/nio/file/Path;
invokevirtual com.sun.tools.javac.file.RelativePath.resolveAgainst:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$DirectoryFileObject;
public java.lang.String inferBinaryName(java.lang.Iterable<? extends java.nio.file.Path>);
descriptor: (Ljava/lang/Iterable;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.relativePath:Lcom/sun/tools/javac/file/RelativePath;
invokestatic com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.toBinaryName:(Lcom/sun/tools/javac/file/RelativePath;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$DirectoryFileObject;
0 1 1 paths Ljava/lang/Iterable<+Ljava/nio/file/Path;>;
Signature: (Ljava/lang/Iterable<+Ljava/nio/file/Path;>;)Ljava/lang/String;
MethodParameters:
Name Flags
paths
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "DirectoryFileObject["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.userPackageRootDir:Ljava/nio/file/Path;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.relativePath:Lcom/sun/tools/javac/file/RelativePath;
getfield com.sun.tools.javac.file.RelativePath.path:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$DirectoryFileObject;
com.sun.tools.javac.file.PathFileObject getSibling(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/file/PathFileObject;
flags: (0x0000)
Code:
stack=9, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.file.PathFileObject$DirectoryFileObject
dup
aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.fileManager:Lcom/sun/tools/javac/file/BaseFileManager;
1: aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.path:Ljava/nio/file/Path;
aload 1
invokeinterface java.nio.file.Path.resolveSibling:(Ljava/lang/String;)Ljava/nio/file/Path;
2: aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.userPackageRootDir:Ljava/nio/file/Path;
3: new com.sun.tools.javac.file.RelativePath$RelativeFile
dup
aload 0
getfield com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.relativePath:Lcom/sun/tools/javac/file/RelativePath;
invokevirtual com.sun.tools.javac.file.RelativePath.dirname:()Lcom/sun/tools/javac/file/RelativePath$RelativeDirectory;
aload 1
invokespecial com.sun.tools.javac.file.RelativePath$RelativeFile.<init>:(Lcom/sun/tools/javac/file/RelativePath$RelativeDirectory;Ljava/lang/String;)V
4: invokespecial com.sun.tools.javac.file.PathFileObject$DirectoryFileObject.<init>:(Lcom/sun/tools/javac/file/BaseFileManager;Ljava/nio/file/Path;Ljava/nio/file/Path;Lcom/sun/tools/javac/file/RelativePath;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/file/PathFileObject$DirectoryFileObject;
0 5 1 baseName Ljava/lang/String;
MethodParameters:
Name Flags
baseName
}
SourceFile: "PathFileObject.java"
NestHost: com.sun.tools.javac.file.PathFileObject
InnerClasses:
private DirectoryFileObject = com.sun.tools.javac.file.PathFileObject$DirectoryFileObject of com.sun.tools.javac.file.PathFileObject
public RelativeDirectory = com.sun.tools.javac.file.RelativePath$RelativeDirectory of com.sun.tools.javac.file.RelativePath
public RelativeFile = com.sun.tools.javac.file.RelativePath$RelativeFile of com.sun.tools.javac.file.RelativePath