static Collection<? extends IndexableIteratorBuilder> getUnexcludedRootsIteratorBuilders(@NotNull Project project,
                                                                                           @NotNull List<? extends SyntheticLibraryDescriptor> libraryDescriptorsBefore,
                                                                                           @NotNull List<? extends ExcludePolicyDescriptor> excludedDescriptorsBefore,
                                                                                           @NotNull List<? extends SyntheticLibraryDescriptor> librariesDescriptorsAfter) {
    Set<VirtualFile> excludedRoots = new HashSet<>();
    for (SyntheticLibraryDescriptor value : libraryDescriptorsBefore) {
      excludedRoots.addAll(value.excludedRoots);
    }
    for (ExcludePolicyDescriptor value : excludedDescriptorsBefore) {
      excludedRoots.addAll(value.getExcludedRoots());
      excludedRoots.addAll(value.excludedFromSdkRoots);
    }

    return createBuildersForReincludedFiles(project, excludedRoots, librariesDescriptorsAfter);
  }
static Collection<? extends IndexableIteratorBuilder> getUnexcludedRootsIteratorBuilders(@NotNull Project project,
                                                                                           @NotNull List<? extends SyntheticLibraryDescriptor> libraryDescriptorsBefore,
                                                                                           @NotNull List<? extends ExcludePolicyDescriptor> excludedDescriptorsBefore,
                                                                                           @NotNull List<? extends SyntheticLibraryDescriptor> librariesDescriptorsAfter)