1 write to _builder
System.Text.RegularExpressions (1)
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.cs (1)
174
_builder
= builder;
24 references to _builder
System.Text.RegularExpressions (24)
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.Automata.cs (15)
200
node =
_builder
.Epsilon; // The entire match is fixed length.
225
_builder
.CreateConcat( // Subtract the fixed part of the loop.
226
_builder
.CreateLoop(left._left, left.IsLazy, 0, left._upper - left._lower),
239
node ==
_builder
.Epsilon ? new MatchReversalInfo<TSet>(MatchReversalKind.FixedLength, pos) :
240
new MatchReversalInfo<TSet>(MatchReversalKind.PartialFixedLength, pos, GetOrCreateState_NoLock(
_builder
.CreateDisableBacktrackingSimulation(node), 0));
252
SymbolicRegexNode<TSet> prunedNode = node.PruneAnchors(
_builder
, prevCharKind);
357
/// <remarks>This function locks the matcher for safe concurrent use of the <see cref="
_builder
"/></remarks>
368
(checkThreshold &&
_builder
._nodeCache.Count >= SymbolicRegexThresholds.NfaNodeCountThreshold)) // if # of nodes exceeds the NFA threshold
376
targetState = GetOrCreateState(sourceState.Next(
_builder
, minterm, nextCharKind), nextCharKind);
386
/// <remarks>This function locks the matcher for safe concurrent use of the <see cref="
_builder
"/></remarks>
405
GetState(coreTargetId).Node : coreState.Next(
_builder
, minterm, nextCharKind);
420
/// <remarks>This function locks the matcher for safe concurrent use of the <see cref="
_builder
"/></remarks>
433
List<(SymbolicRegexNode<TSet> Node, DerivativeEffect[] Effects)>? transition = coreState.NfaNextWithEffects(
_builder
, minterm, nextCharKind);
456
/// <remarks>This function locks the matcher for safe concurrent use of the <see cref="
_builder
"/></remarks>
466
foreach (SymbolicRegexNode<TSet> nfaNode in node.EnumerateAlternationBranches(
_builder
))
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.cs (6)
139
private ISolver<TSet> Solver =>
_builder
._solver;
250
_deadStateId = GetOrCreateState_NoLock(
_builder
._nothing, 0).Id;
288
if (
_builder
._newLineSet.Equals(minterm))
293
else if (!Solver.IsEmpty(Solver.And(
_builder
._wordLetterForBoundariesSet, minterm)))
295
Debug.Assert(Solver.IsEmpty(Solver.And(Solver.Not(
_builder
._wordLetterForBoundariesSet), minterm)));
329
return
_builder
._newLineSet;
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.Dgml.cs (2)
59
string label = DescribeLabel(transition.Value.Rule,
_builder
);
188
DescribeLabels(matcher.Solver.GetMinterms()!, matcher.
_builder
));
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.Sample.cs (1)
39
CharSetSolver charSetSolver =
_builder
._charSetSolver;