private static void processContext(@NotNull InspectionContext context) {
    List<? extends PsiElement> elements = context.isVisible() ? context.elementsInside() : context.elementsOutside();
    if (LOG.isTraceEnabled()) {
      LOG.trace("processContext: " +
                context + "; elements(" + elements.size() + "): " + StringUtil.join(elements, e-> e + "(" + e.getClass() + ")", ", ") + "; accepts=" + context.acceptingPsiTypes());
    }
    context.inspectionVisitorsOptimizer().acceptElements(elements,
                                                         context.acceptingPsiTypes,
                                                         psiElement -> context.holder.visitElement(psiElement, context.visitor));
  }
private static void processContext(@NotNull InspectionContext context)