@Override
  public boolean processChildren(@NotNull PsiElementProcessor<? super PsiFileSystemItem> processor) {
    checkValid();

    for (VirtualFile vFile : myFile.getChildren()) {
      ProgressManager.checkCanceled();
      if (!vFile.isValid()) continue;

      boolean isDir = vFile.isDirectory();
      if (processor instanceof PsiFileSystemItemProcessor && !((PsiFileSystemItemProcessor)processor).acceptItem(vFile.getName(), isDir)) {
        continue;
      }

      PsiFileSystemItem item = isDir ? myManager.findDirectory(vFile) : myManager.findFile(vFile);
      if (item != null && !processor.execute(item)) {
        return false;
      }
    }

    return true;
  }
@Override
  public boolean processChildren(@NotNull PsiElementProcessor<? super PsiFileSystemItem> processor)