private static void mergePsi(@NotNull PsiFile oldFile,
                               @NotNull ASTNode oldFileNode,
                               @NotNull PsiFile injectedPsi,
                               @NotNull ASTNode injectedNode) {
    if (!oldFile.textMatches(injectedPsi)) {
      InjectedFileViewProvider oldViewProvider = (InjectedFileViewProvider)oldFile.getViewProvider();
      oldViewProvider.performNonPhysically(() -> DebugUtil.performPsiModification("injected tree diff", () -> {
        DiffLog diffLog = BlockSupportImpl.mergeTrees((PsiFileImpl)oldFile, oldFileNode, injectedNode, new DaemonProgressIndicator(),
                                                            oldFileNode.getText());
        diffLog.doActualPsiChange(oldFile);
      }));
    }
  }
private static void mergePsi(@NotNull PsiFile oldFile,
                               @NotNull ASTNode oldFileNode,
                               @NotNull PsiFile injectedPsi,
                               @NotNull ASTNode injectedNode)