private boolean processFilesContainingAllKeysInPhysicalFiles(@NotNull Collection<? extends AllKeysQuery<?, ?>> queries,
                                                               @NotNull GlobalSearchScope filter,
                                                               @Nullable IdFilter filesSet,
                                                               @NotNull Processor<? super VirtualFile> processor) {
    IntSet set = null;
    if (filter instanceof GlobalSearchScope.FilesScope filesScope) {
      set = new IntOpenHashSet(filesScope.asArray());
    }

    //noinspection rawtypes
    for (AllKeysQuery query : queries) {
      @SuppressWarnings("unchecked")
      IntSet queryResult = collectFileIdsContainingAllKeys(query.getIndexId(),
                                                           query.getDataKeys(),
                                                           filter,
                                                           query.getValueChecker(),
                                                           filesSet,
                                                           set);
      if (queryResult == null) return false;
      if (queryResult.isEmpty()) return true;
      if (set == null) {
        set = new IntOpenHashSet(queryResult);
      }
      else {
        set = queryResult;
      }
    }
    return set != null && processVirtualFiles(set, filter, processor);
  }
private boolean processFilesContainingAllKeysInPhysicalFiles(@NotNull Collection<? extends AllKeysQuery<?, ?>> queries,
                                                               @NotNull GlobalSearchScope filter,
                                                               @Nullable IdFilter filesSet,
                                                               @NotNull Processor<? super VirtualFile> processor)