static @Nullable HighlightHoverInfo highlightHoverInfo(@NotNull Editor editor, @Nullable HighlightInfo info) {
    if (info == null) {
      return null;
    }
    String tooltip = info.getToolTip();
    if (tooltip == null) {
      return null;
    }
    try {
      Project project = editor.getProject();
      TooltipAction tooltipAction = project == null ? null : ReadAction
        .nonBlocking(() -> TooltipActionProvider.calcTooltipAction(info, project, editor))
        .executeSynchronously();
      return new HighlightHoverInfo(tooltip, tooltipAction);
    }
    catch (IndexNotReadyException ignored) {
    }
    catch (ProcessCanceledException e) {
      throw e;
    }
    catch (Exception e) {
      LOG.warn(e);
    }
    return new HighlightHoverInfo(tooltip, null);
  }
static @Nullable HighlightHoverInfo highlightHoverInfo(@NotNull Editor editor, @Nullable HighlightInfo info)