@Override
  public void processQuery(@NotNull IndexPatternSearch.SearchParameters queryParameters,
                           @NotNull Processor<? super IndexPatternOccurrence> consumer) {
    final PsiFile file = queryParameters.getFile();
    VirtualFile virtualFile = file.getVirtualFile();
    if (file instanceof PsiBinaryFile || file instanceof PsiCompiledElement || virtualFile == null) {
      return;
    }

    final TodoCacheManager cacheManager = TodoCacheManager.getInstance(file.getProject());
    final IndexPatternProvider patternProvider = queryParameters.getPatternProvider();
    int count = patternProvider != null
                ? cacheManager.getTodoCount(virtualFile, patternProvider)
                : cacheManager.getTodoCount(virtualFile, queryParameters.getPattern());
    if (count != 0) {
      executeImpl(queryParameters, consumer);
    }
  }
@Override
  public void processQuery(@NotNull IndexPatternSearch.SearchParameters queryParameters,
                           @NotNull Processor<? super IndexPatternOccurrence> consumer)