class com.sun.tools.javac.file.PathFileObject$SimpleFileObject 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$SimpleFileObject
super_class: com.sun.tools.javac.file.PathFileObject
{
private final java.nio.file.Path userPath;
descriptor: Ljava/nio/file/Path;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private void <init>(com.sun.tools.javac.file.BaseFileManager, java.nio.file.Path, java.nio.file.Path);
descriptor: (Lcom/sun/tools/javac/file/BaseFileManager;Ljava/nio/file/Path;Ljava/nio/file/Path;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 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
putfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.userPath:Ljava/nio/file/Path;
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
0 3 1 fileManager Lcom/sun/tools/javac/file/BaseFileManager;
0 3 2 path Ljava/nio/file/Path;
0 3 3 userPath Ljava/nio/file/Path;
MethodParameters:
Name Flags
fileManager
path
userPath
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.userPath: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$SimpleFileObject;
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=2, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.path:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
astore 2
start local 2 1: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: com.sun.tools.javac.file.PathFileObject$SimpleFileObject java.lang.Iterable java.nio.file.Path top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 3
start local 3 3: aload 3
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
astore 5
start local 5 4: aload 2
aload 5
invokeinterface java.nio.file.Path.startsWith:(Ljava/nio/file/Path;)Z
ifeq 10
5: aload 5
aload 2
invokeinterface java.nio.file.Path.relativize:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 6
start local 6 6: aload 6
ifnull 10
7: aload 6
invokestatic com.sun.tools.javac.file.PathFileObject$SimpleFileObject.toBinaryName:(Ljava/nio/file/Path;)Ljava/lang/String;
8: areturn
end local 6 9: StackMap locals: com.sun.tools.javac.file.PathFileObject$SimpleFileObject java.lang.Iterable java.nio.file.Path java.nio.file.Path java.util.Iterator java.nio.file.Path
StackMap stack: java.lang.IllegalArgumentException
pop
end local 5 end local 3 10: StackMap locals: com.sun.tools.javac.file.PathFileObject$SimpleFileObject java.lang.Iterable java.nio.file.Path top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
11: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
0 12 1 paths Ljava/lang/Iterable<+Ljava/nio/file/Path;>;
1 12 2 absPath Ljava/nio/file/Path;
3 10 3 p Ljava/nio/file/Path;
4 10 5 ap Ljava/nio/file/Path;
6 9 6 rp Ljava/nio/file/Path;
Exception table:
from to target type
5 8 9 Class java.lang.IllegalArgumentException
Signature: (Ljava/lang/Iterable<+Ljava/nio/file/Path;>;)Ljava/lang/String;
MethodParameters:
Name Flags
paths
public javax.tools.JavaFileObject$Kind getKind();
descriptor: ()Ljavax/tools/JavaFileObject$Kind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.userPath:Ljava/nio/file/Path;
invokestatic com.sun.tools.javac.file.BaseFileManager.getKind:(Ljava/nio/file/Path;)Ljavax/tools/JavaFileObject$Kind;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
public boolean isNameCompatible(java.lang.String, javax.tools.JavaFileObject$Kind);
descriptor: (Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.userPath:Ljava/nio/file/Path;
aload 1
aload 2
invokevirtual com.sun.tools.javac.file.PathFileObject$SimpleFileObject.isPathNameCompatible:(Ljava/nio/file/Path;Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
0 1 1 simpleName Ljava/lang/String;
0 1 2 kind Ljavax/tools/JavaFileObject$Kind;
MethodParameters:
Name Flags
simpleName
kind
public java.net.URI toUri();
descriptor: ()Ljava/net/URI;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.userPath:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toUri:()Ljava/net/URI;
invokevirtual java.net.URI.normalize:()Ljava/net/URI;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
com.sun.tools.javac.file.PathFileObject getSibling(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/file/PathFileObject;
flags: (0x0000)
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.file.PathFileObject$SimpleFileObject
dup
aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.fileManager:Lcom/sun/tools/javac/file/BaseFileManager;
1: aload 0
getfield com.sun.tools.javac.file.PathFileObject$SimpleFileObject.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$SimpleFileObject.userPath:Ljava/nio/file/Path;
aload 1
invokeinterface java.nio.file.Path.resolveSibling:(Ljava/lang/String;)Ljava/nio/file/Path;
3: invokespecial com.sun.tools.javac.file.PathFileObject$SimpleFileObject.<init>:(Lcom/sun/tools/javac/file/BaseFileManager;Ljava/nio/file/Path;Ljava/nio/file/Path;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/file/PathFileObject$SimpleFileObject;
0 4 1 baseName Ljava/lang/String;
MethodParameters:
Name Flags
baseName
}
SourceFile: "PathFileObject.java"
NestHost: com.sun.tools.javac.file.PathFileObject
InnerClasses:
private SimpleFileObject = com.sun.tools.javac.file.PathFileObject$SimpleFileObject of com.sun.tools.javac.file.PathFileObject
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject