39 references to Alternate
System.Text.RegularExpressions (39)
System\Text\RegularExpressions\RegexCompiler.cs (2)
1648Debug.Assert(node.Kind is RegexNodeKind.Alternate, $"Unexpected type: {node.Kind}"); 2773case RegexNodeKind.Alternate:
System\Text\RegularExpressions\RegexNode.cs (24)
319case RegexNodeKind.Alternate: 498if ((existingChild.Kind is RegexNodeKind.Alternate or RegexNodeKind.BackreferenceConditional or RegexNodeKind.ExpressionConditional or RegexNodeKind.Loop or RegexNodeKind.Lazyloop) && 511case RegexNodeKind.Alternate: 591RegexNodeKind.Alternate => ReduceAlternation(), 612Debug.Assert(Kind is RegexNodeKind.Alternate or RegexNodeKind.Concatenate); 6150 => new RegexNode(Kind == RegexNodeKind.Alternate ? RegexNodeKind.Nothing : RegexNodeKind.Empty, Options), 695case RegexNodeKind.Alternate: 1018Debug.Assert(Kind == RegexNodeKind.Alternate); 1031if (node.Kind == RegexNodeKind.Alternate) 1034if (node.Kind == RegexNodeKind.Alternate) 1037if (node.Kind == RegexNodeKind.Alternate) 1045if (node.Kind is RegexNodeKind.Alternate && node.ChildCount() == 2) 1088if (at.Kind == RegexNodeKind.Alternate) 1195Debug.Assert(alternation.Kind == RegexNodeKind.Alternate); 1261var newAlternate = new RegexNode(RegexNodeKind.Alternate, alternation.Options); 1294Debug.Assert(node.Kind == RegexNodeKind.Alternate); 1337Debug.Assert(alternation.Kind == RegexNodeKind.Alternate); 1431var newAlternate = new RegexNode(RegexNodeKind.Alternate, startingNodeOptions); 2070case RegexNodeKind.Alternate or RegexNodeKind.BackreferenceConditional or RegexNodeKind.ExpressionConditional: 2330case RegexNodeKind.Alternate: 2489case RegexNodeKind.Alternate: 2547case RegexNodeKind.Alternate: 2615case RegexNodeKind.Alternate: 2732case RegexNodeKind.Alternate:
System\Text\RegularExpressions\RegexParser.cs (1)
2068_alternation = new RegexNode(RegexNodeKind.Alternate, _options);
System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (5)
242case RegexNodeKind.Alternate: 377case RegexNodeKind.Alternate when !rtl: // for RTL we'd need to be matching the suffixes of the alternation cases 709case RegexNodeKind.Alternate when thorough: 1081case RegexNodeKind.Alternate: 1477case RegexNodeKind.Alternate:
System\Text\RegularExpressions\RegexTreeAnalyzer.cs (2)
49case RegexNodeKind.Alternate: 98RegexNodeKind.Alternate or RegexNodeKind.BackreferenceConditional or RegexNodeKind.ExpressionConditional => true,
System\Text\RegularExpressions\RegexWriter.cs (2)
220case RegexNodeKind.Alternate | BeforeChild: 228case RegexNodeKind.Alternate | AfterChild:
System\Text\RegularExpressions\Symbolic\RegexNodeConverter.cs (2)
85case RegexNodeKind.Alternate: 221case RegexNodeKind.Alternate:
System\Text\RegularExpressions\Symbolic\SymbolicRegexKind.cs (1)
17/// <summary>A node that matches if any of its nodes match and that matches them in a fixed order that mirrors how the backtracking engines operate (e.g. <see cref="RegexNodeKind.Alternate"/>).</summary>