private static @Nullable FileContent getTransientAwareFileContent(FileInfo info) throws IOException {
    var file = info.file;
    var doc = FileDocumentManager.getInstance().getCachedDocument(file);
    var project = info.project;
    if (doc == null) {
      try {
        return FileContentImpl.createByFile(file, project);
      }
      catch (FileNotFoundException | NoSuchFileException ignored) {
        return null;
      }
    }
    PsiFile psi = PsiDocumentManager.getInstance(project).getPsiFile(doc);
    DocumentContent content = FileBasedIndexImpl.findLatestContent(doc, psi);
    return FileContentImpl.createByContent(file, () -> {
      var text = content.getText();
      return text.toString().getBytes(file.getCharset());
    }, project);
  }
private static @Nullable FileContent getTransientAwareFileContent(FileInfo info)