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: 542Debug.Assert(node.Kind is RegexNodeKind.Atomic or RegexNodeKind.Empty or RegexNodeKind.Loop or RegexNodeKind.Lazyloop); 6150 => new RegexNode(Kind == RegexNodeKind.Alternate ? RegexNodeKind.Nothing : RegexNodeKind.Empty, Options), 672case RegexNodeKind.Empty: 704if (branches[0].Kind == RegexNodeKind.Empty) 706return new RegexNode(RegexNodeKind.Empty, child.Options); 715if (branches[i].Kind == RegexNodeKind.Empty) 796(child.Child(0).Kind is RegexNodeKind.Empty || child.Child(1).Kind is RegexNodeKind.Empty); // can be transformed into a ? or ?? 811return child.Kind == RegexNodeKind.Empty ? 914case RegexNodeKind.Empty: 935u = u.M == 0 ? new RegexNode(RegexNodeKind.Empty, Options) : child; 1047if (node.Child(1).Kind is RegexNodeKind.Empty) 1051else if (node.Child(0).Kind is RegexNodeKind.Empty) 1256newAlternate.AddChild(new RegexNode(RegexNodeKind.Empty, children[i].Options)); 1297case RegexNodeKind.Empty when !seenEmpty: 1301case RegexNodeKind.Empty: 1439node.Kind = RegexNodeKind.Empty; 1448node.Kind = RegexNodeKind.Empty; 1690return new RegexNode(RegexNodeKind.Empty, Options); 1786else if (at.Kind == RegexNodeKind.Empty) 2220child.Kind is RegexNodeKind.Empty) 2230if (child.Kind is RegexNodeKind.Empty) 2292AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2310AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2773case RegexNodeKind.Empty: 2800goto case RegexNodeKind.Empty; 2911case RegexNodeKind.Empty: 2937goto case RegexNodeKind.Empty; 3010else if (child.Kind is RegexNodeKind.Empty) 3111return 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>