4 instantiations of GlobPattern
Microsoft.Build (1)
Globbing\MSBuildGlob.cs (1)
215
GlobPattern newMatcher =
new
(fixedDirectoryPart, wildcardDirectoryPart, filenamePart, useInvariantCulture);
Microsoft.Build.Framework (3)
Globbing\GlobPattern.cs (1)
62
new
(pattern, ignoreCase, useInvariantCulture, isFilePattern);
Utilities\FileMatcher.cs (2)
1419
globFileMatch = new
GlobPattern
(
1921
? new
GlobPattern
(
38 references to GlobPattern
Microsoft.Build (13)
FileSystem\DirectoryCacheFileSystemWrapper.cs (1)
87
return FileMatcher.IsAllFilesWildcard(searchPattern) ||
GlobPattern
.MatchesName(fileName, searchPattern);
Globbing\MSBuildGlob.cs (6)
36
public
GlobPattern
Matcher { get; }
38
public GlobState(string globRoot, string fileSpec, bool isLegal, string fixedDirectoryPart, string wildcardDirectoryPart, string filenamePart, bool needsRecursion,
GlobPattern
matcher)
51
private static readonly WeakValueDictionary<string,
GlobPattern
> s_matcherCache = new();
58
internal
GlobPattern
TestOnlyMatcher => _state.Value.Matcher;
198
GlobPattern
matcher = null;
215
GlobPattern
newMatcher = new(fixedDirectoryPart, wildcardDirectoryPart, filenamePart, useInvariantCulture);
Utilities\FileSpecMatchTester.cs (6)
20
private readonly
GlobPattern
_matcher;
22
private FileSpecMatcherTester(string currentDirectory, string unescapedFileSpec, string filenamePattern,
GlobPattern
matcher)
44
GlobPattern
matcher = null;
91
if (!
GlobPattern
.MatchesName(filename.AsSpan(), _filenamePattern))
106
private static void CreateGlobOrFilenamePattern(string unescapedFileSpec, string currentDirectory, out string filenamePattern, out
GlobPattern
matcher)
141
out
GlobPattern
glob,
Microsoft.Build.Framework (21)
Globbing\GlobPattern.cs (1)
61
internal static
GlobPattern
ForName(string pattern, bool ignoreCase, bool useInvariantCulture, bool isFilePattern) =>
Globbing\MSBuildPathMatcher.cs (11)
47
private readonly
GlobPattern
?[]? _cultureSensitiveDirectoryPatterns;
56
private readonly
GlobPattern
? _filePatternMatcher;
82
? new
GlobPattern
?[_directoryPatterns.Length]
99
_cultureSensitiveDirectoryPatterns![index] =
GlobPattern
.ForName(
140
_filePatternMatcher =
GlobPattern
.ForName(
149
?
GlobPattern
.ForName(filePattern, _ignoreCaseFilePattern, useInvariantCulture, isFilePattern: true)
513
GlobPattern
? matcher)
520
return
GlobPattern
.MatchesName(name, pattern, ignoreCase);
531
&& (!_enforceStrictWin32Match ||
GlobPattern
.MatchesName(fileName, _filePattern));
536
GlobPattern
? cultureSensitivePattern = _cultureSensitiveDirectoryPatterns?[patternIndex];
554
||
GlobPattern
.MatchesName(directoryName, _directoryPatterns[patternIndex]));
Utilities\FileMatcher.cs (9)
150
(
GlobPattern
matcher, bool needsRecursion, bool isLegalFileSpec)>> s_globCache = new();
841
GlobPattern
globFileMatch, // can be null
866
public
GlobPattern
GlobFileMatch { get; }
1409
out
GlobPattern
globFileMatch,
1432
out
GlobPattern
globFileMatch,
1442
GetFileSpecInfoWithGlobCore(key.FileSpec, out
var
matcher, out var needsRec, out var isLegal);
1584
return
GlobPattern
.MatchesName(Path.GetFileName(path.AsSpan()), pattern);
1620
GlobPattern
globFileMatch;
3670
return (index != -1 &&
GlobPattern
.MatchesName(directoryPath.AsSpan(index + 1), pattern));
Microsoft.Build.Tasks.Core (4)
Untar.cs (2)
394
result = _includePatterns.All(pattern => !
GlobPattern
.MatchesName(FileMatcher.Normalize(entryName).AsSpan(), pattern));
399
result |= _excludePatterns.Any(pattern =>
GlobPattern
.MatchesName(FileMatcher.Normalize(entryName).AsSpan(), pattern));
Unzip.cs (2)
311
result = _includePatterns.All(pattern => !
GlobPattern
.MatchesName(FileMatcher.Normalize(zipArchiveEntry.FullName).AsSpan(), pattern));
316
result |= _excludePatterns.Any(pattern =>
GlobPattern
.MatchesName(FileMatcher.Normalize(zipArchiveEntry.FullName).AsSpan(), pattern));