40 references to Concatenate
System.Text.RegularExpressions.Generator (40)
RegexGenerator.Emitter.cs (1)
1839case RegexNodeKind.Concatenate when child.Child(0) == startingLiteralNode && (startingLiteralNode.Kind is RegexNodeKind.One or RegexNodeKind.Set or RegexNodeKind.Multi):
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexNode.cs (26)
138Kind == RegexNodeKind.Concatenate && 278case RegexNodeKind.Concatenate: 379case RegexNodeKind.Concatenate: 386if (node.Parent is { Kind: RegexNodeKind.Concatenate } parent) 451case RegexNodeKind.Concatenate: 541RegexNodeKind.Concatenate => ReduceConcatenation(), 560Debug.Assert(Kind is RegexNodeKind.Alternate or RegexNodeKind.Concatenate); 1090if (child.Kind != RegexNodeKind.Concatenate || child.ChildCount() < 2) 1160var newConcat = new RegexNode(RegexNodeKind.Concatenate, alternation.Options); 1317ProcessOneOrMulti(branch.Kind == RegexNodeKind.Concatenate ? branch.Child(0) : branch, startingSpan); 1362var newConcat = new RegexNode(RegexNodeKind.Concatenate, startingNodeOptions); 1382RegexNode branch = Kind == RegexNodeKind.Concatenate ? Child(0) : this; 1414case RegexNodeKind.Concatenate: 1504Debug.Assert(Kind == RegexNodeKind.Concatenate); 1546Debug.Assert(Kind == RegexNodeKind.Concatenate); 1563if (at.Kind == RegexNodeKind.Concatenate && 1629Debug.Assert(Kind == RegexNodeKind.Concatenate); 1827if (Kind is not RegexNodeKind.Concatenate) 1852if (node.Kind is RegexNodeKind.Capture or RegexNodeKind.Concatenate) 1956if (node.Kind == RegexNodeKind.Concatenate) 2076case RegexNodeKind.Concatenate: 2221case RegexNodeKind.Concatenate: 2314case RegexNodeKind.Concatenate: 2443case RegexNodeKind.Concatenate: 2520Debug.Assert(Kind == RegexNodeKind.Concatenate, $"Expected Concatenate, got {Kind}"); 2636Debug.Assert(Kind == RegexNodeKind.Concatenate, $"Expected Concatenate, got {Kind}");
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexParser.cs (3)
521_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options); 2069_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options); 2086_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options);
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (9)
212case RegexNodeKind.Concatenate: 363case RegexNodeKind.Concatenate: 497case RegexNodeKind.Concatenate: 696case RegexNodeKind.Concatenate: 1040case RegexNodeKind.Concatenate: 1118if (node.Kind != RegexNodeKind.Concatenate) 1200while ((nextChild.Kind is RegexNodeKind.Atomic or RegexNodeKind.Capture or RegexNodeKind.Concatenate) || 1285case RegexNodeKind.Concatenate: 1351case RegexNodeKind.Concatenate:
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexTreeAnalyzer.cs (1)
105RegexNodeKind.Concatenate => i == childCount - 1,