public class com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver implements com.oracle.svm.core.c.ProjectHeaderFile$HeaderResolver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver
super_class: java.lang.Object
{
final java.lang.String projectsDir;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver this
start local 1 // java.lang.String projectsDir
0: .line 196
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 197
aload 0 /* this */
aload 1 /* projectsDir */
putfield com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver.projectsDir:Ljava/lang/String;
2: .line 198
return
end local 1 // java.lang.String projectsDir
end local 0 // com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/c/ProjectHeaderFile$FallbackHeaderResolver;
0 3 1 projectsDir Ljava/lang/String;
MethodParameters:
Name Flags
projectsDir
public com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult resolveHeader(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/svm/core/c/ProjectHeaderFile$HeaderSearchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=3
start local 0 // com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver this
start local 1 // java.lang.String projectName
start local 2 // java.lang.String headerFile
0: .line 202
aload 0 /* this */
getfield com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver.projectsDir:Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
aload 1 /* projectName */
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
aload 2 /* headerFile */
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.normalize:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
astore 3 /* fallbackHeaderFile */
start local 3 // java.nio.file.Path fallbackHeaderFile
1: .line 203
aload 3 /* fallbackHeaderFile */
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 3
2: .line 204
new com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult
dup
new java.lang.StringBuilder
dup
ldc "\""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* fallbackHeaderFile */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 3 /* fallbackHeaderFile */
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aastore
invokespecial com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult.<init>:(Ljava/util/Optional;[Ljava/lang/String;)V
areturn
3: .line 207
StackMap locals: java.nio.file.Path
StackMap stack:
new com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult
dup
invokestatic java.util.Optional.empty:()Ljava/util/Optional;
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 3 /* fallbackHeaderFile */
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aastore
invokespecial com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult.<init>:(Ljava/util/Optional;[Ljava/lang/String;)V
areturn
end local 3 // java.nio.file.Path fallbackHeaderFile
end local 2 // java.lang.String headerFile
end local 1 // java.lang.String projectName
end local 0 // com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/svm/core/c/ProjectHeaderFile$FallbackHeaderResolver;
0 4 1 projectName Ljava/lang/String;
0 4 2 headerFile Ljava/lang/String;
1 4 3 fallbackHeaderFile Ljava/nio/file/Path;
MethodParameters:
Name Flags
projectName
headerFile
}
SourceFile: "ProjectHeaderFile.java"
NestHost: com.oracle.svm.core.c.ProjectHeaderFile
InnerClasses:
public FallbackHeaderResolver = com.oracle.svm.core.c.ProjectHeaderFile$FallbackHeaderResolver of com.oracle.svm.core.c.ProjectHeaderFile
public abstract HeaderResolver = com.oracle.svm.core.c.ProjectHeaderFile$HeaderResolver of com.oracle.svm.core.c.ProjectHeaderFile
public HeaderSearchResult = com.oracle.svm.core.c.ProjectHeaderFile$HeaderSearchResult of com.oracle.svm.core.c.ProjectHeaderFile