public interface  com.github.javaparser.utils.CollectionStrategy extends java.lang.Object
{
public abstract com.github.javaparser.ParserConfiguration getParserConfiguration();
public abstract com.github.javaparser.utils.ProjectRoot collect(java.nio.file.Path);
public java.util.Optional getRoot(java.nio.file.Path)
{
com.github.javaparser.utils.CollectionStrategy v;
java.nio.file.Path v;
boolean v, v, v, v;
com.github.javaparser.ParserConfiguration v;
java.util.Optional v, v, v, v, v, v;
com.github.javaparser.ParseResult v;
java.util.function.Function v, v;
java.util.function.Supplier v, v, v, v, v, v, v, v;
java.lang.String v;
java.io.IOException v;
java.lang.RuntimeException v;
com.github.javaparser.ParseProblemException v;
java.lang.Object v;
java.util.function.Supplier[] v, v, v, v, v, v, v;
com.github.javaparser.JavaParser v;
v := @this: com.github.javaparser.utils.CollectionStrategy;
v := @parameter: java.nio.file.Path;
label:
v = new com.github.javaparser.JavaParser;
v = interfaceinvoke v.<com.github.javaparser.utils.CollectionStrategy: com.github.javaparser.ParserConfiguration getParserConfiguration()>();
specialinvoke v.<com.github.javaparser.JavaParser: void <init>(com.github.javaparser.ParserConfiguration)>(v);
v = virtualinvoke v.<com.github.javaparser.JavaParser: com.github.javaparser.ParseResult parse(java.nio.file.Path)>(v);
v = virtualinvoke v.<com.github.javaparser.ParseResult: boolean isSuccessful()>();
if v == 0 goto label;
v = virtualinvoke v.<com.github.javaparser.ParseResult: java.util.Optional getResult()>();
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<com.github.javaparser.ParseResult: java.util.Optional getResult()>();
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$getStorage__891: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional flatMap(java.util.function.Function)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<com.github.javaparser.ast.CompilationUnit$Storage: java.lang.String getFileName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("module-info.java");
if v == 0 goto label;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
label:
return v;
label:
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$getSourceRoot__892: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
label:
return v;
label:
v = newarray (java.util.function.Supplier)[0];
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Storage information not present -- an issue with providing a string rather than file reference?", v);
goto label;
label:
v = newarray (java.util.function.Supplier)[0];
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Parse result not present", v);
goto label;
label:
v = newarray (java.util.function.Supplier)[0];
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Parsing was not successful.", v);
v = newarray (java.util.function.Supplier)[2];
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_0__889: java.util.function.Supplier bootstrap$(com.github.javaparser.ParseResult)>(v);
v[0] = v;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$getProblems__890: java.util.function.Supplier bootstrap$(com.github.javaparser.ParseResult)>(v);
v[1] = v;
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("There were (%d) problems parsing file: %s", v);
label:
goto label;
label:
v := @caughtexception;
v = newarray (java.util.function.Supplier)[2];
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_1__897: java.util.function.Supplier bootstrap$(java.nio.file.Path)>(v);
v[0] = v;
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_2__898: java.util.function.Supplier bootstrap$(com.github.javaparser.ParseProblemException)>(v);
v[1] = v;
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Problem parsing file %s : %s", v);
goto label;
label:
v := @caughtexception;
v = newarray (java.util.function.Supplier)[2];
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_3__895: java.util.function.Supplier bootstrap$(java.nio.file.Path)>(v);
v[0] = v;
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_4__896: java.util.function.Supplier bootstrap$(java.lang.RuntimeException)>(v);
v[1] = v;
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Could not parse file %s : %s", v);
goto label;
label:
v := @caughtexception;
v = newarray (java.util.function.Supplier)[2];
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_5__893: java.util.function.Supplier bootstrap$(java.nio.file.Path)>(v);
v[0] = v;
v = staticinvoke <com.github.javaparser.utils.CollectionStrategy$lambda_getRoot_6__894: java.util.function.Supplier bootstrap$(java.io.IOException)>(v);
v[1] = v;
staticinvoke <com.github.javaparser.utils.Log: void info(java.lang.String,java.util.function.Supplier[])>("Could not read file %s : %s", v);
label:
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
return v;
catch com.github.javaparser.ParseProblemException from label to label with label;
catch com.github.javaparser.ParseProblemException from label to label with label;
catch com.github.javaparser.ParseProblemException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
}
public java.nio.file.PathMatcher getPathMatcher(java.lang.String)
{
com.github.javaparser.utils.CollectionStrategy v;
java.nio.file.PathMatcher v;
java.lang.String v;
java.nio.file.FileSystem v;
v := @this: com.github.javaparser.utils.CollectionStrategy;
v := @parameter: java.lang.String;
v = staticinvoke <java.nio.file.FileSystems: java.nio.file.FileSystem getDefault()>();
v = virtualinvoke v.<java.nio.file.FileSystem: java.nio.file.PathMatcher getPathMatcher(java.lang.String)>(v);
return v;
}
}