1 write to _lower
System.Text.RegularExpressions (1)
System\Text\RegularExpressions\Symbolic\SymbolicRegexNode.cs (1)
67
_lower
= lower;
49 references to _lower
System.Text.RegularExpressions (49)
System\Text\RegularExpressions\Symbolic\SymbolicRegexBuilder.cs (5)
242
if (node.Kind == SymbolicRegexNodeKind.Loop && node.
_lower
== 0 && node._upper == 1 && lower == 0 && upper == 1)
318
return builder.CreateFixedLengthMarker(node.
_lower
);
329
return builder.CreateLoop(Transform(node._left, builder, setTransformer), node.IsLazy, node.
_lower
, node._upper);
339
return builder.CreateCaptureStart(node.
_lower
);
342
return builder.CreateCaptureEnd(node.
_lower
);
System\Text\RegularExpressions\Symbolic\SymbolicRegexKind.cs (3)
39
/// <see cref="SymbolicRegexNode{S}.
_lower
"/> stores the fixed length. This node is used to avoid the second phase
70
/// <remarks><see cref="SymbolicRegexNode{S}.
_lower
"/> stores the associated capture number.</remarks>
73
/// <remarks><see cref="SymbolicRegexNode{S}.
_lower
"/> stores the associated capture number.</remarks>
System\Text\RegularExpressions\Symbolic\SymbolicRegexMatcher.Automata.cs (4)
218
if (left.
_lower
<= 0 || left._left!.Kind is not SymbolicRegexNodeKind.Singleton)
223
node = left.
_lower
== left._upper ?
226
_builder.CreateLoop(left._left, left.IsLazy, 0, left._upper - left.
_lower
),
228
pos += left.
_lower
;
System\Text\RegularExpressions\Symbolic\SymbolicRegexNode.cs (37)
125
return node._info.IsLazyLoop && node.
_lower
== 0;
259
is_nullable =
_lower
== 0 || _left.IsNullableFor(context);
363
public bool IsStar =>
_lower
== 0 && _upper == int.MaxValue;
374
public bool IsPlus =>
_lower
== 1 && _upper == int.MaxValue;
414
if (lower == 0 && upper == 1 && body._kind == SymbolicRegexNodeKind.Loop && body.
_lower
== 0 && body._upper == 1)
671
if (left._left.IsNullable && rl._kind == SymbolicRegexNodeKind.Loop && rl.
_lower
== 0 && rl._upper == 1 && rl.IsLazy)
685
if (ll._kind == SymbolicRegexNodeKind.Loop && ll.
_lower
== 0 && ll._upper == 1 && ll.IsLazy)
912
if (
_lower
== _upper)
917
length *=
_lower
;
1013
Debug.Assert(
_lower
== lengthSoFar);
1162
if (loop.
_lower
== 0)
1220
int newlower =
_lower
is 0 or int.MaxValue ?
_lower
:
_lower
- 1;
1320
if (
_lower
== 0 || _left.IsNullable || !_left.IsNullableFor(context))
1403
return builder.CreateLoop(_left.StripEffects(builder), IsLazy,
_lower
, _upper);
1483
case SymbolicRegexNodeKind.Loop when
_lower
== 0 && _upper == 1:
1551
if (
_lower
!= 0 || (_upper != 0 && !IsLazy && _left.IsNullableFor(context)))
1574
apply(new DerivativeEffect(DerivativeEffectKind.CaptureStart,
_lower
), arg);
1578
apply(new DerivativeEffect(DerivativeEffectKind.CaptureEnd,
_lower
), arg);
1629
AppendNumberSubscript(sb,
_lower
);
1679
else if (
_lower
== 0 && _upper == 1)
1707
else if (
_lower
== 0 && _upper == 0)
1715
sb.Append(
_lower
);
1720
else if (
_lower
!= _upper)
1747
Debug.Assert(
_lower
>= 0);
1748
AppendNumberSubscript(sb,
_lower
);
1753
Debug.Assert(
_lower
>= 0);
1754
AppendNumberSuperscript(sb,
_lower
);
1915
return builder.CreateLoop(_left.Reverse(builder), IsLazy,
_lower
, _upper);
2121
CreateLoop(builder, body,
_lower
, _upper, IsLazy);
2188
return
_lower
;
2293
Debug.Assert(
_lower
>= 0 && _upper > 0 && _upper >=
_lower
);
2296
if (
_lower
is 0 or int.MaxValue)
2303
Debug.Assert(
_lower
> 0);
2308
return Times(
_lower
+ 1, _left.CountSingletons());