📄
core/src/ScannerOptions.cs
using System.Collections.Immutable; using System.Linq; using GlobExpressions; namespace Cfa; public sealed record ScannerOptions { public IImmutableList<Glob> IncludePatterns { get; init; } = []; public IImmutableList<Glob> ExcludePatterns { get; init; } = []; internal bool IncludesProject(string projectPath) => (IncludePatterns.Count == 0 || IncludePatterns.Any(pattern => pattern.IsMatch(projectPath))) && !ExcludePatterns.Any(pattern => pattern.IsMatch(projectPath)); }