public int registerTextEditorHighlightingPass(@NotNull TextEditorHighlightingPassFactory factory,
                                                @NotNull Anchor anchor,
                                                int anchorPassId,
                                                boolean needAdditionalIntentionsPass,
                                                boolean inPostHighlightingPass) {
    int[] ids = switch (anchor) {
      case AFTER -> new int[]{anchorPassId};
      case BEFORE ->
        //todo
        null;
      case FIRST -> null;
      case LAST ->
        //todo
        new int[]{Pass.UPDATE_ALL,
          Pass.UPDATE_FOLDING, Pass.LINE_MARKERS, Pass.SLOW_LINE_MARKERS,
          Pass.EXTERNAL_TOOLS,
          Pass.LOCAL_INSPECTIONS, Pass.POPUP_HINTS};
    };
    return registerTextEditorHighlightingPass(factory, ids, null, needAdditionalIntentionsPass, -1);
  }
public int registerTextEditorHighlightingPass(@NotNull TextEditorHighlightingPassFactory factory,
                                                @NotNull Anchor anchor,
                                                int anchorPassId,
                                                boolean needAdditionalIntentionsPass,
                                                boolean inPostHighlightingPass)