org_eclipse_lemminx_services_extensions_AggregetedHoverValuesTest_java
org.apache.xerces.impl.dv.xs.QNameDV
@Override
    public Object getActualValue(String string, ValidationContext validationContext) throws InvalidDatatypeValueException {
        String string2;
        String string3;
        int n = string.indexOf(":");
        if (n > 0) {
            string3 = validationContext.getSymbol(string.substring(0, n));
            string2 = string.substring(n + 1);
        } else {
            string3 = EMPTY_STRING;
            string2 = string;
        }
        if (string3.length() > 0 && !XMLChar.isValidNCName(string3)) {
            throw new InvalidDatatypeValueException("cvc-datatype-valid.1.2.1", new Object[]{string, "QName"});
        }
        if (!XMLChar.isValidNCName(string2)) {
            throw new InvalidDatatypeValueException("cvc-datatype-valid.1.2.1", new Object[]{string, "QName"});
        }
        String string4 = validationContext.getURI(string3);
        if (string3.length() > 0 && string4 == null) {
            throw new InvalidDatatypeValueException("UndeclaredPrefix", new Object[]{string, string3});
        }
        return new XQName(string3, validationContext.getSymbol(string2), validationContext.getSymbol(string), string4);
    }
 -> java.lang.String.indexOf(java.lang.String): int -> java.lang.String.substring(int,int): java.lang.String -> java.lang.String.hashCode(): int -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.substring(int): java.lang.String -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.charAt(int): char -> java.lang.String.length(): int -> java.lang.String.hashCode(): int -> java.lang.String.equals(java.lang.Object): boolean -> java.lang.String.hashCode(): int -> java.lang.String.equals(java.lang.Object): boolean
 [CALL] -> java.lang.String.indexOf(java.lang.String): int -> java.lang.String.substring(int,int): java.lang.String [CALL] [CALL] [CALL] -> java.lang.String.hashCode(): int [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] -> java.lang.String.substring(int): java.lang.String -> java.lang.String.length(): int [CALL] -> java.lang.String.length(): int -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] [EXIT] [CALL] -> java.lang.String.length(): int -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] -> java.lang.String.charAt(int): char [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] -> java.lang.String.length(): int [CALL] [CALL] [CALL] -> java.lang.String.hashCode(): int [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] [CALL] [CALL] [CALL] -> java.lang.String.hashCode(): int [EXIT] -> java.lang.String.equals(java.lang.Object): boolean [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [EXIT]