org_aspectj_ajde_core_tests_InpathTest_java
org.aspectj.org.eclipse.jdt.internal.compiler.batch.FileSystem
private NameEnvironmentAnswer findClass(String qualifiedTypeName, char[] typeName, boolean asBinaryOnly, char[] moduleName) {
        answer = this.internalFindClass(qualifiedTypeName, typeName, asBinaryOnly, moduleName);
        if (this.annotationsFromClasspath && answer != null && answer.getBinaryType() instanceof ClassFileReader) {
            i = 0;
            length = this.classpaths.length;
            while (i < length) {
                classpathEntry = this.classpaths[i];
                if (classpathEntry.hasAnnotationFileFor(qualifiedTypeName)) {
                    block16: {
                        zip = classpathEntry instanceof ClasspathJar != false ? ((ClasspathJar)classpathEntry).zipFile : null;
                        shouldClose = false;
                        if (zip == null) {
                            zip = ExternalAnnotationDecorator.getAnnotationZipFile((String)classpathEntry.getPath(), null);
                            shouldClose = true;
                        }
                        answer.setBinaryType(ExternalAnnotationDecorator.create((IBinaryType)answer.getBinaryType(), (String)classpathEntry.getPath(), (String)qualifiedTypeName, (ZipFile)zip));
                        var12_11 = answer;
                        if (!shouldClose || zip == null) break block16;
                        try {
                            zip.close();
                        }
                        catch (IOException v0) {}
                    }
                    return var12_11;
                    catch (IOException v1) {
                        try {
                            ** if (!shouldClose || zip == null) goto lbl-1000
                        }
                        catch (Throwable var11_12) {
                            if (shouldClose && zip != null) {
                                try {
                                    zip.close();
                                }
                                catch (IOException v3) {}
                            }
                            throw var11_12;
                        }
lbl-1000:
                        // 1 sources

                        {
                            try {
                                zip.close();
                            }
                            catch (IOException v2) {}
                        }
lbl-1000:
                        // 2 sources

                        {
                        }
                    }
                }
                ++i;
            }
            answer.setBinaryType((IBinaryType)new ExternalAnnotationDecorator(answer.getBinaryType(), null));
        }
        return answer;
    }
 -> java.util.Set.contains(java.lang.Object): boolean -> java.lang.String.valueOf(java.lang.Object): java.lang.String -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String -> java.util.Hashtable.get(java.lang.Object): java.lang.Object -> java.util.Hashtable.get(java.lang.Object): java.lang.Object -> java.io.File.toString(): java.lang.String -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object -> java.lang.String.replace(char,char): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.lang.Object.getClass(): java.lang.Class -> java.io.File.toString(): java.lang.String -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object -> java.lang.String.lastIndexOf(int): int -> java.lang.String.substring(int,int): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] -> java.util.function.Predicate.test(java.lang.Object): boolean -> java.nio.file.FileSystem.getPath(java.lang.String,java.lang.String[]): java.nio.file.Path -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.util.Arrays.equals(char[],char[]): boolean -> java.lang.String.toCharArray(): char[] -> java.lang.String.valueOf(char[]): java.lang.String -> java.util.Map.containsKey(java.lang.Object): boolean
 [CALL] [CALL] -> java.util.Set.contains(java.lang.Object): boolean -> java.lang.String.valueOf(java.lang.Object): java.lang.String -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.String.substring(int,int): java.lang.String [CALL] [CALL] [CALL] [CALL] [CALL] -> java.util.Hashtable.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [CALL] -> java.util.Hashtable.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [CALL] [CALL] -> java.io.File.toString(): java.lang.String -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] -> java.lang.String.replace(char,char): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] -> java.util.List.get(int): java.lang.Object -> java.lang.String.toCharArray(): char[] [EXIT] [EXIT] [EXIT] -> java.lang.Object.getClass(): java.lang.Class [CALL] [CALL] [CALL] [CALL] -> java.io.File.toString(): java.lang.String -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.lastIndexOf(int): int -> java.lang.String.substring(int,int): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.List.toArray(java.lang.Object[]): java.lang.Object[] [EXIT] -> java.util.function.Predicate.test(java.lang.Object): boolean [CALL] -> java.nio.file.FileSystem.getPath(java.lang.String,java.lang.String[]): java.nio.file.Path -> java.util.Map.computeIfAbsent(java.lang.Object,java.util.function.Function): java.lang.Object -> java.util.Optional.orElse(java.lang.Object): java.lang.Object [EXIT] -> java.lang.String.toCharArray(): char[] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] -> java.util.Arrays.equals(char[],char[]): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] -> java.lang.String.toCharArray(): char[] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.valueOf(char[]): java.lang.String -> java.util.Map.containsKey(java.lang.Object): boolean [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT]