final boolean allowVisitChildren(@NotNull VirtualFile file) {
    if (!file.is(VFileProperty.SYMLINK)) {
      return true;
    }

    if (!myFollowSymLinks) {
      return false;
    }

    // ignoring invalid and recursive symbolic links - to avoid visiting files twice
    return !file.isRecursiveOrCircularSymlink();
  }
final boolean allowVisitChildren(@NotNull VirtualFile file)