System\Text\RegularExpressions\RegexNode.cs (23)
204case RegexNodeKind.Loop:
207RegexNode loopAsChild = new(RegexNodeKind.Loop, Options, M, N);
225goto case RegexNodeKind.Loop;
304case RegexNodeKind.Loop:
498if ((existingChild.Kind is RegexNodeKind.Alternate or RegexNodeKind.BackreferenceConditional or RegexNodeKind.ExpressionConditional or RegexNodeKind.Loop or RegexNodeKind.Lazyloop) &&
537case RegexNodeKind.Loop:
542Debug.Assert(node.Kind is RegexNodeKind.Atomic or RegexNodeKind.Empty or RegexNodeKind.Loop or RegexNodeKind.Lazyloop);
547Debug.Assert(node.Kind is RegexNodeKind.Loop or RegexNodeKind.Lazyloop);
550if (node.Kind is RegexNodeKind.Loop or RegexNodeKind.Lazyloop)
595RegexNodeKind.Loop or RegexNodeKind.Lazyloop => ReduceLoops(),
826Debug.Assert(Kind is RegexNodeKind.Loop or RegexNodeKind.Lazyloop);
842if (kind == RegexNodeKind.Loop)
1535case RegexNodeKind.Loop or RegexNodeKind.Lazyloop when node.M > 0:
2010case RegexNodeKind.Loop when CanBeMadeAtomic(node, subsequent, iterateNullableSubsequent: true, allowLazy: false):
2038else if (node.Kind is RegexNodeKind.Loop or RegexNodeKind.Lazyloop)
2042goto case RegexNodeKind.Loop;
2050case RegexNodeKind.Loop:
2298case RegexNodeKind.Loop or RegexNodeKind.Lazyloop when subsequent.M > 0:
2422case RegexNodeKind.Loop:
2611case RegexNodeKind.Loop:
2717case RegexNodeKind.Loop or RegexNodeKind.Lazyloop:
3021var result = new RegexNode(lazy ? RegexNodeKind.Lazyloop : RegexNodeKind.Loop, Options, min, max);
3249case RegexNodeKind.Loop: