in src/java/org/jetbrains/plugins/clojure/runner/console/ClojureFilter.java [46:73]
private Result matchFileName(String line, int entireLength) {
try {
final Matcher matcher = FILE_PATTERN.matcher(line);
if (matcher.matches()) {
final String fileName = matcher.group(1);
final int lineNumber = Integer.parseInt(matcher.group(2));
String colGroup = matcher.group(4);
boolean hasColumn = !StringUtil.isEmpty(colGroup);
final int textStartOffset = entireLength - line.length();
final PsiFile[] psiFiles = FilenameIndex.getFilesByName(myProject, fileName, GlobalSearchScope.allScope(myProject));
if (psiFiles.length == 0) return null;
final HyperlinkInfo info = psiFiles.length == 1 ?
new OpenFileHyperlinkInfo(myProject, psiFiles[0].getVirtualFile(), lineNumber - 1, hasColumn ? Integer.parseInt(colGroup) - 1 : 0) :
new MyHyperlinkInfo(psiFiles);
return new Result(textStartOffset + matcher.start(1), textStartOffset + matcher.end(hasColumn ? 4 : 2), info);
}
}
catch (NumberFormatException e) {
LOG.debug(e);
}
return null;
}