boolean (@NotNull Document document, @NotNull List<? extends BooleanRunnable> finishProcessors, @NotNull List<? extends BooleanRunnable> reparseInjectedProcessors, boolean synchronously, @Nullable VirtualFile virtualFile) { for (BooleanRunnable finishRunnable : finishProcessors) { boolean success = finishRunnable.run(); if (synchronously) { assert success : finishRunnable + " in " + finishProcessors; } if (!success) { return false; } } clearUncommittedInfo(document); if (virtualFile != null) { getSmartPointerManager().updatePointerTargetsAfterReparse(virtualFile); } FileViewProvider viewProvider = getCachedViewProvider(document); if (viewProvider != null) { viewProvider.contentsSynchronized(); } for (BooleanRunnable runnable : reparseInjectedProcessors) { if (!runnable.run()) return false; } return true; }