Class PathExclusionUtils

java.lang.Object
com.github._1c_syntax.bsl.languageserver.utils.PathExclusionUtils

public final class PathExclusionUtils extends Object
Исключение путей по списку паттернов.

Поддерживаются простые имена сегментов (например, .git, node_modules) и glob-паттерны (**\/.git/**, build/, *.tmp). Glob без префикса **\/ или / автоматически дополняется до **\/<pattern> — чтобы матчить на любой глубине абсолютного пути.

  • Method Details

    • isExcluded

      public static boolean isExcluded(Path path, @Nullable List<String> patterns)
      Разовая проверка, попадает ли путь под исключения. Для массового обхода каталога используйте filters(List).
    • filters

      public static PathExclusionUtils.ExclusionFilters filters(@Nullable List<String> patterns)
      Строит фильтры для каталогов и для файлов, разделяя их так, чтобы directory-only паттерны обрезали обход целыми поддеревьями. Пустые/blank паттерны и невалидные glob игнорируются (с предупреждением в лог).