org_eclipse_lemminx_services_extensions_ErrorParticipantLanguageServiceTest_java
org.eclipse.lemminx.extensions.contentmodel.participants.diagnostics.LSPErrorReporterForXML
@Override
    protected Range toLSPRange(XMLLocator location, String key, Object[] arguments, String message, DiagnosticSeverity diagnosticSeverity, boolean fatalError, DOMDocument document, String documentOrGrammarURI, boolean errorForDocument) {
        XMLSyntaxErrorCode syntaxCode = XMLSyntaxErrorCode.get(key);
        if (syntaxCode != null) {
            if (errorForDocument) {
                Range range = XMLSyntaxErrorCode.toLSPRange(location, syntaxCode, arguments, document);
                if (range == null) return null;
                return range;
            }
            this.fillReferencedGrammarDiagnostic(location, key, arguments, message, diagnosticSeverity, fatalError, document.getResolverExtensionManager(), syntaxCode, null, null, null, documentOrGrammarURI);
            return NO_RANGE;
        }
        XMLSchemaErrorCode schemaCode = XMLSchemaErrorCode.get(key);
        if (schemaCode != null) {
            Range range = XMLSchemaErrorCode.toLSPRange(location, schemaCode, arguments, document);
            if (range == null) return null;
            return range;
        }
        DTDErrorCode dtdCode = DTDErrorCode.get(key);
        if (dtdCode != null) {
            if (errorForDocument) {
                Range range = DTDErrorCode.toLSPRange(location, dtdCode, arguments, document);
                if (range == null) return null;
                return range;
            }
            this.fillReferencedGrammarDiagnostic(location, key, arguments, message, diagnosticSeverity, fatalError, document.getResolverExtensionManager(), null, null, dtdCode, null, documentOrGrammarURI);
            return NO_RANGE;
        }
        XSDErrorCode xsdCode = XSDErrorCode.get(key);
        if (xsdCode == null || errorForDocument) return null;
        this.fillReferencedGrammarDiagnostic(location, key, arguments, message, diagnosticSeverity, fatalError, document.getResolverExtensionManager(), null, null, null, xsdCode, documentOrGrammarURI);
        return NO_RANGE;
    }
 -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.lang.String.length(): int -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object
 [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [EXIT] -> java.util.List.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] -> java.lang.String.length(): int [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.util.List.size(): int -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object [EXIT] [EXIT] -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [CALL] -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object [EXIT] -> java.util.List.size(): int -> java.util.List.get(int): java.lang.Object [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT]