56 references to Concatenate
System.Text.RegularExpressions.Generator (56)
RegexGenerator.Emitter.cs (5)
1922
case RegexNodeKind.
Concatenate
when child.Child(0) == startingLiteralNode && (startingLiteralNode.Kind is RegexNodeKind.One or RegexNodeKind.Set or RegexNodeKind.Multi):
2909
case RegexNodeKind.
Concatenate
:
3072
Debug.Assert(node.Kind is RegexNodeKind.
Concatenate
, $"Unexpected type: {node.Kind}");
5591
RegexNodeKind.
Concatenate
=> "Match a sequence of expressions.",
5765
RegexNodeKind.
Concatenate
when node.Parent is not { Kind: RegexNodeKind.Alternate or RegexNodeKind.BackreferenceConditional or RegexNodeKind.ExpressionConditional } => true,
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexNode.cs (32)
138
Kind == RegexNodeKind.
Concatenate
&&
318
case RegexNodeKind.
Concatenate
:
433
case RegexNodeKind.
Concatenate
:
440
if (node.Parent is { Kind: RegexNodeKind.
Concatenate
} parent)
543
case RegexNodeKind.
Concatenate
when !rtl:
640
RegexNodeKind.
Concatenate
=> ReduceConcatenation(),
659
Debug.Assert(Kind is RegexNodeKind.Alternate or RegexNodeKind.
Concatenate
);
1260
RegexNode required = startingNode.Kind == RegexNodeKind.
Concatenate
? startingNode.Child(0) : startingNode;
1281
RegexNode other = endingNode.Kind == RegexNodeKind.
Concatenate
? endingNode.Child(0) : endingNode;
1303
if (children[i].Kind == RegexNodeKind.
Concatenate
)
1325
var newConcat = new RegexNode(RegexNodeKind.
Concatenate
, alternation.Options);
1485
ProcessOneOrMulti(branch.Kind == RegexNodeKind.
Concatenate
? branch.Child(0) : branch, startingSpan);
1530
var newConcat = new RegexNode(RegexNodeKind.
Concatenate
, startingNodeOptions);
1550
RegexNode branch = Kind == RegexNodeKind.
Concatenate
? Child(0) : this;
1652
case RegexNodeKind.
Concatenate
:
1742
Debug.Assert(Kind == RegexNodeKind.
Concatenate
);
1784
Debug.Assert(Kind == RegexNodeKind.
Concatenate
);
1801
if (at.Kind == RegexNodeKind.
Concatenate
&&
1867
Debug.Assert(Kind == RegexNodeKind.
Concatenate
);
2069
if (Kind is not RegexNodeKind.
Concatenate
)
2093
while (node.Kind is RegexNodeKind.Capture or RegexNodeKind.
Concatenate
)
2145
while (loopChild.Kind is RegexNodeKind.Capture or RegexNodeKind.
Concatenate
)
2462
while (node.Kind is RegexNodeKind.Capture or RegexNodeKind.
Concatenate
)
2480
case RegexNodeKind.
Concatenate
:
2709
case RegexNodeKind.
Concatenate
:
2788
Debug.Assert(node.Kind is not RegexNodeKind.
Concatenate
, "The existing logic assumes that the node itself isn't a concatenation.");
2807
case RegexNodeKind.
Concatenate
:
2891
case RegexNodeKind.
Concatenate
:
3020
case RegexNodeKind.
Concatenate
:
3105
Debug.Assert(Kind == RegexNodeKind.
Concatenate
, $"Expected Concatenate, got {Kind}");
3170
else if (child.Kind is RegexNodeKind.
Concatenate
)
3241
Debug.Assert(Kind == RegexNodeKind.
Concatenate
, $"Expected Concatenate, got {Kind}");
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexParser.cs (9)
544
_concatenation = new RegexNode(RegexNodeKind.
Concatenate
, _options);
1745
var crThenLf = new RegexNode(RegexNodeKind.
Concatenate
, lookaheadOpts);
1769
var crlfEnd = new RegexNode(RegexNodeKind.
Concatenate
, lookaheadOpts);
1775
var anyNewLineOptEnd = new RegexNode(RegexNodeKind.
Concatenate
, lookaheadOpts);
1787
var result = new RegexNode(RegexNodeKind.
Concatenate
, opts);
1813
var result = new RegexNode(RegexNodeKind.
Concatenate
, opts);
1839
var result = new RegexNode(RegexNodeKind.
Concatenate
, opts);
2245
_concatenation = new RegexNode(RegexNodeKind.
Concatenate
, _options);
2262
_concatenation = new RegexNode(RegexNodeKind.
Concatenate
, _options);
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (9)
212
case RegexNodeKind.
Concatenate
:
363
case RegexNodeKind.
Concatenate
:
497
case RegexNodeKind.
Concatenate
:
696
case RegexNodeKind.
Concatenate
:
1050
case RegexNodeKind.
Concatenate
:
1142
if (node.Kind != RegexNodeKind.
Concatenate
)
1224
while ((nextChild.Kind is RegexNodeKind.Atomic or RegexNodeKind.Capture or RegexNodeKind.
Concatenate
) ||
1309
case RegexNodeKind.
Concatenate
:
1373
case RegexNodeKind.
Concatenate
:
src\libraries\System.Text.RegularExpressions\src\System\Text\RegularExpressions\RegexTreeAnalyzer.cs (1)
101
RegexNodeKind.
Concatenate
=> i == childCount - 1,