docs: private static boolean acquireAnalysisPermitUnlessCancelled(IProgressMonitor monitor) throws InterruptedException {
          do {
              if (analysisSem.tryAcquire(1, TimeUnit.SECONDS)) {
                  return true;
              }
          } while (!monitor.isCanceled());
  
          return false;
      }