@Internal
  @Nullable
  public FileIndexesValuesApplier getApplierToRemoveDataFromIndexesForFile(@NotNull VirtualFile file,
                                                                           @NotNull FileIndexingStamp indexingStamp) {

    final int fileId = getFileId(file);
    boolean pendingDeletionFileAppearedInIndexableFilter = file.isValid() && !ensureFileBelongsToIndexableFilter(fileId, file).isEmpty();

    if (pendingDeletionFileAppearedInIndexableFilter) {
      return null;
    }

    ProgressManager.checkCanceled();

    final ApplicationMode applicationMode = getIndexApplicationMode();
    return new FileIndexesValuesApplier(this, fileId, file, indexingStamp, Collections.emptyList(), Collections.emptyList(),
                                        true, true, applicationMode,
                                        UnknownFileType.INSTANCE /*todo?*/, false);
  }
@Internal
  @Nullable
  public FileIndexesValuesApplier getApplierToRemoveDataFromIndexesForFile(@NotNull VirtualFile file,
                                                                           @NotNull FileIndexingStamp indexingStamp)