9 references to RegexPrefixAnalyzer
System.Text.RegularExpressions.Generator (9)
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexFindOptimizations.cs (9)
26
LeadingAnchor =
RegexPrefixAnalyzer
.FindLeadingAnchor(root);
52
TrailingAnchor =
RegexPrefixAnalyzer
.FindTrailingAnchor(root);
69
string? prefix =
RegexPrefixAnalyzer
.FindPrefix(root);
95
if (
RegexPrefixAnalyzer
.FindFirstCharClass(root) is string charClass)
133
prefix =
RegexPrefixAnalyzer
.FindPrefixOrdinalCaseInsensitive(root);
146
if (
RegexPrefixAnalyzer
.FindPrefixes(root, ignoreCase: true) is { Length: > 1 } caseInsensitivePrefixes)
171
List<FixedDistanceSet>? fixedDistanceSets =
RegexPrefixAnalyzer
.FindFixedDistanceSets(root, thorough: !interpreter);
187
(RegexNode LoopNode, (char Char, string? String, StringComparison StringComparison, char[]? Chars) Literal)? literalAfterLoop =
RegexPrefixAnalyzer
.FindLiteralFollowingLeadingLoop(root);
198
RegexPrefixAnalyzer
.SortFixedDistanceSetsByQuality(fixedDistanceSets);