48 references to Empty
System.Text.RegularExpressions (48)
System\Text\RegularExpressions\RegexCompiler.cs (4)
2057new RegexNode(RegexNodeKind.Empty, child.Options)); 2309RegexNode? noBranch = node.Child(1) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 2470RegexNode? noBranch = node.Child(2) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 3060case RegexNodeKind.Empty:
System\Text\RegularExpressions\RegexNode.cs (33)
189Kind = RegexNodeKind.Empty; 228Kind = RegexNodeKind.Empty; 275case RegexNodeKind.Empty: 589Debug.Assert(node.Kind is RegexNodeKind.Atomic or RegexNodeKind.Empty or RegexNodeKind.Loop or RegexNodeKind.Lazyloop); 6620 => new RegexNode(Kind == RegexNodeKind.Alternate ? RegexNodeKind.Nothing : RegexNodeKind.Empty, Options), 719case RegexNodeKind.Empty: 759if (branches[0].Kind == RegexNodeKind.Empty) 761return new RegexNode(RegexNodeKind.Empty, child.Options); 770if (branches[i].Kind == RegexNodeKind.Empty) 851(child.Child(0).Kind is RegexNodeKind.Empty || child.Child(1).Kind is RegexNodeKind.Empty); // can be transformed into a ? or ?? 866return child.Kind == RegexNodeKind.Empty ? 969case RegexNodeKind.Empty: 990u = u.M == 0 ? new RegexNode(RegexNodeKind.Empty, Options) : child; 1102if (node.Child(1).Kind is RegexNodeKind.Empty) 1106else if (node.Child(0).Kind is RegexNodeKind.Empty) 1311newAlternate.AddChild(new RegexNode(RegexNodeKind.Empty, children[i].Options)); 1352case RegexNodeKind.Empty when !seenEmpty: 1356case RegexNodeKind.Empty: 1497node.Kind = RegexNodeKind.Empty; 1506node.Kind = RegexNodeKind.Empty; 1748return new RegexNode(RegexNodeKind.Empty, Options); 1844else if (at.Kind == RegexNodeKind.Empty) 2278child.Kind is RegexNodeKind.Empty) 2288if (child.Kind is RegexNodeKind.Empty) 2350AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2368AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2910case RegexNodeKind.Empty: 2937goto case RegexNodeKind.Empty; 3048case RegexNodeKind.Empty: 3074goto case RegexNodeKind.Empty; 3190else if (child.Kind is RegexNodeKind.Empty) 3291return new RegexNode(RegexNodeKind.Empty, Options);
System\Text\RegularExpressions\RegexNodeKind.cs (1)
122/// by that child, and if a concatenation has no children, it can be replaced by <see cref="Empty"/>.
System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (7)
100case RegexNodeKind.Empty: 469case RegexNodeKind.Empty: 666case RegexNodeKind.Empty: 1012case RegexNodeKind.Empty: 1293case RegexNodeKind.Empty: 1388case RegexNodeKind.Empty or RegexNodeKind.NegativeLookaround: 1416if (node.Child(i).Kind is not (RegexNodeKind.Empty or RegexNodeKind.PositiveLookaround or RegexNodeKind.NegativeLookaround))
System\Text\RegularExpressions\RegexWriter.cs (1)
217case RegexNodeKind.Empty:
System\Text\RegularExpressions\Symbolic\RegexNodeConverter.cs (1)
132case RegexNodeKind.Empty:
System\Text\RegularExpressions\Symbolic\SymbolicRegexKind.cs (1)
9/// <summary>An empty node that matches a zero-width input (e.g. <see cref="RegexNodeKind.Empty"/>).</summary>