5 types derived from PatternMatcher
Microsoft.CodeAnalysis.Workspaces (5)
PatternMatching\CompoundPatternMatcher.cs (1)
17
private sealed class CompoundPatternMatcher :
PatternMatcher
PatternMatching\ContainerPatternMatcher.cs (1)
19
private sealed partial class ContainerPatternMatcher :
PatternMatcher
PatternMatching\FuzzyPatternMatcher.cs (1)
20
internal sealed class FuzzyPatternMatcher :
PatternMatcher
PatternMatching\RegexPatternMatcher.cs (1)
23
:
PatternMatcher
(includeMatchedSpans, culture)
PatternMatching\SimplePatternMatcher.cs (1)
15
internal sealed partial class SimplePatternMatcher :
PatternMatcher
33 references to PatternMatcher
Microsoft.CodeAnalysis.Features (11)
Completion\PatternMatchHelper.cs (6)
38
private readonly Dictionary<(CultureInfo, bool includeMatchedSpans),
PatternMatcher
> _patternMatcherMap = [];
50
var
patternMatcher = GetPatternMatcher(culture, includeMatchSpans);
81
private
PatternMatcher
GetPatternMatcher(CultureInfo culture, bool includeMatchedSpans)
86
if (!_patternMatcherMap.TryGetValue(key, out
var
patternMatcher))
88
patternMatcher =
PatternMatcher
.CreatePatternMatcher(
250
foreach (
var
matcher in _patternMatcherMap.Values)
NavigateTo\AbstractNavigateToSearchService.InProcess.cs (5)
86
var (patternName, containerOpt) =
PatternMatcher
.GetNameAndContainer(searchPattern);
149
using
var
nameMatcher =
PatternMatcher
.CreateNameMatcher(
154
using
var
containerMatcher =
PatternMatcher
.CreateContainerMatcher(
Microsoft.CodeAnalysis.Workspaces (22)
FindSymbols\Declarations\DeclarationFinder_SourceDeclarations.cs (5)
211
var (namePart, containerPart) =
PatternMatcher
.GetNameAndContainer(pattern);
216
using
var
nameMatcher =
PatternMatcher
.CreatePatternMatcher(namePart, includeMatchedSpans: false);
231
using
var
containerPatternMatcher =
PatternMatcher
.CreateDotSeparatedContainerMatcher(containerPart, includeMatchedSpans: false);
FindSymbols\TopLevelSyntaxTree\NavigateToSearchIndex.NavigateToSearchInfo.cs (4)
356
/// the <see cref="
PatternMatcher
"/>'s preprocessing: strips leading non-letter/digit
359
/// Since the <see cref="
PatternMatcher
"/> requires all words to match, failing fast on the
396
while (pattern.Length > 0 && !
PatternMatcher
.IsWordChar(pattern[0]))
399
while (pattern.Length > 0 && !
PatternMatcher
.IsWordChar(pattern[^1]))
PatternMatching\CompoundPatternMatcher.cs (6)
19
private readonly ArrayBuilder<
PatternMatcher
> _matchers;
21
public CompoundPatternMatcher(ReadOnlySpan<
PatternMatcher
> matchers)
24
_matchers = ArrayBuilder<
PatternMatcher
>.GetInstance(matchers.Length);
25
foreach (
var
matcher in matchers)
31
foreach (
var
matcher in _matchers)
39
foreach (
var
matcher in _matchers)
PatternMatching\PatternMatcher.cs (5)
61
public static
PatternMatcher
CreatePatternMatcher(
69
public static
PatternMatcher
CreatePatternMatcher(
88
public static
PatternMatcher
? CreateDotSeparatedContainerMatcher(
105
public static
PatternMatcher
? CreateNameMatcher(
118
public static
PatternMatcher
? CreateContainerMatcher(
PatternMatching\PatternMatcherExtensions.cs (2)
12
public static PatternMatch? GetFirstMatch(this
PatternMatcher
matcher, string? candidate)
19
public static bool Matches(this
PatternMatcher
matcher, [NotNullWhen(true)] string? candidate)