49 references to Multi
System.Text.RegularExpressions (49)
System\Text\RegularExpressions\RegexCompiler.cs (14)
1467
case RegexNodeKind.
Multi
or RegexNodeKind.Notone or RegexNodeKind.One or RegexNodeKind.Set:
1473
int length = node.Kind == RegexNodeKind.
Multi
? node.Str!.Length : 1;
2039
case RegexNodeKind.
Multi
:
2045
case RegexNodeKind.Concatenate when child.Child(0) == startingLiteralNode && (startingLiteralNode.Kind is RegexNodeKind.One or RegexNodeKind.Set or RegexNodeKind.
Multi
):
2055
child.Child(0).Kind is RegexNodeKind.
Multi
?
2095
Debug.Assert(multi.Kind is RegexNodeKind.
Multi
, $"Expected a Multi node, got {multi.Kind}");
2098
new(RegexNodeKind.
Multi
, multi.Options, multi.Str.Substring(1));
2984
case RegexNodeKind.
Multi
:
3484
Debug.Assert(node.Kind is RegexNodeKind.
Multi
, $"Unexpected type: {node.Kind}");
3685
case RegexNodeKind.
Multi
:
5441
if (node.Kind == RegexNodeKind.
Multi
)
5474
if (node.Kind == RegexNodeKind.
Multi
)
5667
if (root.Kind is RegexNodeKind.
Multi
or RegexNodeKind.One or RegexNodeKind.Notone or RegexNodeKind.Set)
5685
Ldc((root.Kind == RegexNodeKind.
Multi
? root.Str!.Length : 1) * (!rtl ? 1 : -1));
System\Text\RegularExpressions\RegexNode.cs (27)
26
/// <remarks>For a <see cref="RegexNodeKind.
Multi
"/>, this is the string from the expression. For an <see cref="IsSetFamily"/> node, this is the character class string from <see cref="RegexCharClass"/>.</remarks>
197
Kind = RegexNodeKind.
Multi
;
279
case RegexNodeKind.
Multi
:
331
case RegexNodeKind.
Multi
:
1437
Debug.Assert(startingNode.Kind == RegexNodeKind.
Multi
);
1469
new RegexNode(RegexNodeKind.
Multi
, startingNodeOptions, startingSpan.ToString());
1491
Debug.Assert(node.Kind == RegexNodeKind.
Multi
);
1540
return branch.Kind is RegexNodeKind.One or RegexNodeKind.
Multi
? branch : null;
1546
Debug.Assert(Kind is RegexNodeKind.One or RegexNodeKind.
Multi
|| (IsOneFamily && M > 0));
1585
if (startingLiteralNode.IsOneFamily || startingLiteralNode.Kind is RegexNodeKind.
Multi
)
1637
case RegexNodeKind.
Multi
:
1688
case RegexNodeKind.
Multi
:
1809
else if (at.Kind is RegexNodeKind.
Multi
or RegexNodeKind.One)
1825
prev.Kind = RegexNodeKind.
Multi
;
1937
nextNode.Kind == RegexNodeKind.
Multi
&&
2147
RegexNodeKind.
Multi
or
2411
case RegexNodeKind.
Multi
when CharInLoopSet(loopNode, literal.Str![0]) && !CharInLoopSet(loopNode, literal.Str[1]):
2529
case RegexNodeKind.
Multi
when node.Ch != subsequent.Str![0]:
2555
case RegexNodeKind.
Multi
when node.Ch == subsequent.Str![0]:
2576
case RegexNodeKind.
Multi
when !RegexCharClass.CharInClass(subsequent.Str![0], node.Str!):
2623
case RegexNodeKind.
Multi
when !CharInStartingOrEndingSet(subsequent.Str![0]):
2834
case RegexNodeKind.
Multi
:
2947
case RegexNodeKind.
Multi
:
3131
else if (child.Kind is RegexNodeKind.
Multi
)
3231
RegexNodeKind.
Multi
=> true,
3288
Kind = RegexNodeKind.
Multi
;
3513
case RegexNodeKind.
Multi
:
System\Text\RegularExpressions\RegexParser.cs (1)
2198
_concatenation!.AddChild(new RegexNode(RegexNodeKind.
Multi
, _options & ~RegexOptions.IgnoreCase, _pattern.Substring(pos, cch)));
System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (4)
124
case RegexNodeKind.
Multi
:
427
case RegexNodeKind.
Multi
:
621
case RegexNodeKind.
Multi
:
1000
case RegexNodeKind.
Multi
:
System\Text\RegularExpressions\RegexReplacement.cs (1)
50
case RegexNodeKind.
Multi
:
System\Text\RegularExpressions\RegexWriter.cs (1)
419
case RegexNodeKind.
Multi
:
System\Text\RegularExpressions\Symbolic\RegexNodeConverter.cs (1)
69
case RegexNodeKind.
Multi
: