1 write to _info
System.Text.RegularExpressions (1)
System\Text\RegularExpressions\Symbolic\SymbolicRegexNode.cs (1)
70_info = info;
37 references to _info
System.Text.RegularExpressions (37)
System\Text\RegularExpressions\Symbolic\MatchingState.cs (1)
65internal bool StartsWithLineAnchor => Node._info.StartsWithLineAnchor;
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.Automata.cs (1)
187if (node._info.ContainsSomeAnchor)
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.cs (7)
218int statesCount = _pattern._info.ContainsSomeAnchor ? CharKind.CharKindCount : 1; 224_containsAnyAnchor = _pattern._info.ContainsSomeAnchor; 225_containsEndZAnchor = _pattern._info.ContainsEndZAnchor; 269if (_pattern._info.ContainsSomeAnchor) 334!_pattern._info.ContainsSomeAnchor ? 1657Debug.Assert(!matcher._pattern._info.ContainsSomeAnchor); 1686Debug.Assert(!matcher._pattern._info.ContainsSomeAnchor);
System\Text\RegularExpressions\Symbolic\SymbolicRegexNode.cs (28)
92internal bool IsLazy => _info.IsLazyLoop; 95internal bool IsHighPriorityNullable => _info.IsHighPriorityNullable; 98internal bool IsHighPriorityNullableFor(uint context) => _info.CanBeNullable && IsHighPriorityNullableFor(this, context); 116if (node._info.IsHighPriorityNullable || !node._info.ContainsSomeAnchor) 118return node._info.IsHighPriorityNullable; 125return node._info.IsLazyLoop && node._lower == 0; 144if (!node._left._info.CanBeNullable) 167internal bool IsNullable => _info.IsNullable; 174Debug.Assert(_info.CanBeNullable || !_info.IsNullable); 175return _info.CanBeNullable; 232_info.IsNullable : 419return Create(builder, SymbolicRegexNodeKind.Loop, body, null, lower, upper, default, SymbolicRegexInfo.Loop(body._info, lower, isLazy)); 436return Create(builder, SymbolicRegexNodeKind.Effect, node, effectNode, -1, -1, default, SymbolicRegexInfo.Effect(node._info)); 446Create(builder, SymbolicRegexNodeKind.DisableBacktrackingSimulation, child, null, -1, -1, default, child._info); 469return Create(builder, SymbolicRegexNodeKind.Concat, left, right, -1, -1, default, SymbolicRegexInfo.Concat(left._info, right._info)); 586return Create(builder, SymbolicRegexNodeKind.Alternate, left, right, -1, -1, default, SymbolicRegexInfo.Alternate(left._info, right._info)); 1372if (!_info.ContainsEffect) 1385Debug.Assert(_left._info.ContainsEffect && !_right._info.ContainsEffect); 1439if (!_info.ContainsEffect) 1464Debug.Assert(_left._info.ContainsEffect && !_right._info.ContainsEffect); 2087if (!_info.StartsWithSomeAnchor) 2259internal int EstimateNfaSize() => Times(_info.ContainsSomeAnchor ? CharKind.CharKindCount : 1, Sum(1, CountSingletons()));