2 writes to _regexTree
System.Text.RegularExpressions (2)
System\Text\RegularExpressions\RegexAssemblyCompiler.cs (1)
49
_regexTree
= tree;
System\Text\RegularExpressions\RegexLWCGCompiler.cs (1)
42
_regexTree
= regexTree;
35 references to _regexTree
System.Text.RegularExpressions (35)
System\Text\RegularExpressions\RegexCompiler.cs (35)
391
Debug.Assert(
_regexTree
!= null);
411
int minRequiredLength =
_regexTree
.FindOptimizations.MinRequiredLength;
462
switch (
_regexTree
.FindOptimizations.FindMode)
490
Debug.Fail($"Unexpected mode: {
_regexTree
.FindOptimizations.FindMode}");
507
switch (
_regexTree
.FindOptimizations.FindMode)
512
if (RegexPrefixAnalyzer.FindTrailingAnchor(
_regexTree
.Root) == RegexNodeKind.End &&
513
_regexTree
.Root.ComputeMaxLength() ==
_regexTree
.FindOptimizations.MinRequiredLength)
522
Ldc(
_regexTree
.FindOptimizations.MinRequiredLength);
642
int extraNewlineBump =
_regexTree
.FindOptimizations.FindMode == FindNextStartingPositionMode.TrailingAnchor_FixedLength_LeftToRight_EndZ ? 1 : 0;
647
Ldc(
_regexTree
.FindOptimizations.MinRequiredLength + extraNewlineBump);
653
Ldc(
_regexTree
.FindOptimizations.MinRequiredLength + extraNewlineBump);
666
switch (
_regexTree
.FindOptimizations.LeadingAnchor)
745
switch (
_regexTree
.FindOptimizations.TrailingAnchor)
747
case RegexNodeKind.End or RegexNodeKind.EndZ when
_regexTree
.FindOptimizations.MaxPossibleLength is int maxLength:
750
int extraNewlineBump =
_regexTree
.FindOptimizations.FindMode == FindNextStartingPositionMode.TrailingAnchor_FixedLength_LeftToRight_EndZ ? 1 : 0;
775
RegexFindOptimizations opts =
_regexTree
.FindOptimizations;
830
string prefix =
_regexTree
.FindOptimizations.LeadingPrefix;
863
Debug.Assert(
_regexTree
.FindOptimizations.FixedDistanceSets is { Count: > 0 });
865
List<RegexFindOptimizations.FixedDistanceSet>? sets =
_regexTree
.FindOptimizations.FixedDistanceSets;
1194
Debug.Assert(
_regexTree
.FindOptimizations.FixedDistanceSets is { Count: > 0 });
1196
RegexFindOptimizations.FixedDistanceSet set =
_regexTree
.FindOptimizations.FixedDistanceSets![0];
1265
Debug.Assert(
_regexTree
.FindOptimizations.LiteralAfterLoop is not null);
1266
(RegexNode LoopNode, (char Char, string? String, StringComparison StringComparison, char[]? Chars) Literal) target =
_regexTree
.FindOptimizations.LiteralAfterLoop.Value;
1445
Debug.Assert(
_regexTree
!= null);
1450
RegexNode node =
_regexTree
.Root;
1492
AnalysisResults analysis = RegexTreeAnalyzer.Analyze(
_regexTree
);
1874
int capnum = RegexParser.MapCaptureNumber(node.M,
_regexTree
!.CaptureNumberSparseMapping);
2056
int capnum = RegexParser.MapCaptureNumber(node.M,
_regexTree
!.CaptureNumberSparseMapping);
2402
int capnum = RegexParser.MapCaptureNumber(node.M,
_regexTree
!.CaptureNumberSparseMapping);
2403
int uncapnum = RegexParser.MapCaptureNumber(node.N,
_regexTree
.CaptureNumberSparseMapping);
2687
if (
_regexTree
!.FindOptimizations.FindMode == FindNextStartingPositionMode.LiteralAfterLoop_LeftToRight &&
2688
_regexTree
!.FindOptimizations.LiteralAfterLoop?.LoopNode == node)
5357
RegexNode root =
_regexTree
!.Root.Child(0);
5392
else if (
_regexTree
.FindOptimizations.FindMode is