in src/com/jetbrains/php/tools/quality/phpstan/PhpStanMessageProcessor.java [148:162]
protected void parseTag(@NotNull String tagName, @NotNull Attributes attributes) {
if (FILE_TAG.equals(tagName)) {
myFileAttr = PathUtil.toSystemIndependentName(attributes.getValue(FILE_NAME_ATTR));
myProblemList = myFilePath == null || myFilePath.endsWith(myFileAttr == null ? "": myFileAttr) ? new ArrayList<>() : null;
}
else if (ERROR_TAG.equals(tagName) || WARNING_TAG.equals(tagName)) {
if (myProblemList != null) {
mySeverity = attributes.getValue(SEVERITY_ATTR).equals(ERROR_TAG) ? ERROR : WARNING;
myLineNumber = parseLineNumber(attributes.getValue(LINE_NUMBER_ATTR));
int column = parseLineNumber(attributes.getValue(COLUMN_NUMBER_ATTR));
myProblemList
.add(new ProblemDescription(mySeverity, myLineNumber, Math.max(0, column - 1), attributes.getValue(MESSAGE_ATTR), myFileAttr));
}
}
}