org_aspectj_tools_ajdoc_BugTest_java
jdk.javadoc.internal.doclets.toolkit.util.DocLink
public DocLink relativizeAgainst(DocPath base) {
        if (base.isEmpty() || this.path == null) {
            return this;
        }
        if (this.isAbsoluteURL(this.path)) {
            return this;
        }
        DocPath newPath = base.relativize(this.path);
        if (newPath.isEmpty() && DocLink.isEmpty(this.query) && DocLink.isEmpty(this.fragment)) {
            newPath = this.path.basename();
        }
        return new DocLink(newPath, this.query, this.fragment);
    }
 -> java.lang.String.isEmpty(): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.isEmpty(): boolean -> java.lang.String.isEmpty(): boolean -> java.lang.String.split(java.lang.String): java.lang.String[] -> java.util.Arrays.asList(java.lang.Object[]): java.util.List -> java.util.List.stream(): java.util.stream.Stream -> java.util.stream.Stream.noneMatch(java.util.function.Predicate): boolean -> java.lang.String.isEmpty(): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.lastIndexOf(java.lang.String): int -> java.lang.String.split(java.lang.String): java.lang.String[] -> java.util.Arrays.asList(java.lang.Object[]): java.util.List -> java.util.List.stream(): java.util.stream.Stream -> java.util.stream.Stream.noneMatch(java.util.function.Predicate): boolean -> java.lang.String.isEmpty(): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.get(int): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.Collections.nCopies(int,java.lang.Object): java.util.List -> java.util.List.addAll(java.util.Collection): boolean -> java.util.List.size(): int -> java.util.List.subList(int,int): java.util.List -> java.util.List.addAll(java.util.Collection): boolean -> java.lang.String.join(java.lang.CharSequence,java.lang.Iterable): java.lang.String -> java.lang.String.endsWith(java.lang.String): boolean -> java.lang.String.isEmpty(): boolean
 [CALL] [CALL] -> java.lang.String.isEmpty(): boolean [EXIT] [CALL] [CALL] [EXIT] -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.Character.isLetter(char): boolean [EXIT] [CALL] -> java.lang.String.isEmpty(): boolean -> java.lang.String.isEmpty(): boolean [CALL] -> java.lang.String.split(java.lang.String): java.lang.String[] -> java.util.Arrays.asList(java.lang.Object[]): java.util.List [CALL] -> java.util.List.stream(): java.util.stream.Stream -> java.util.stream.Stream.noneMatch(java.util.function.Predicate): boolean [CALL] -> java.lang.String.isEmpty(): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] -> java.lang.String.lastIndexOf(java.lang.String): int [CALL] -> java.lang.String.split(java.lang.String): java.lang.String[] -> java.util.Arrays.asList(java.lang.Object[]): java.util.List [CALL] -> java.util.List.stream(): java.util.stream.Stream -> java.util.stream.Stream.noneMatch(java.util.function.Predicate): boolean [CALL] -> java.lang.String.isEmpty(): boolean -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.get(int): java.lang.Object -> java.lang.String.equals(java.lang.Object): boolean -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.Collections.nCopies(int,java.lang.Object): java.util.List -> java.util.List.addAll(java.util.Collection): boolean -> java.util.List.size(): int -> java.util.List.subList(int,int): java.util.List -> java.util.List.addAll(java.util.Collection): boolean -> java.lang.String.join(java.lang.CharSequence,java.lang.Iterable): java.lang.String [CALL] -> java.lang.String.endsWith(java.lang.String): boolean [EXIT] [EXIT] [CALL] -> java.lang.String.isEmpty(): boolean [EXIT] [CALL] [EXIT] [EXIT]