PsiElement (@NotNull PsiFile file, @NotNull OfflineProblemDescriptor descriptor, @NotNull Project project) { if(descriptor.getLine() - 1 <= 0 && descriptor.getOffset() <= 0) return null; Document document = PsiDocumentManager.getInstance(project).getDocument(file); if(document == null) return null; int lineStartOffset = document.getLineStartOffset(descriptor.getLine() - 1); if(!DocumentUtil.isValidOffset(lineStartOffset, document) || !DocumentUtil.isValidOffset(lineStartOffset + descriptor.getOffset(), document)) return null; return file.findElementAt(lineStartOffset + descriptor.getOffset()); }