47 references to Empty
System.Text.RegularExpressions (47)
System\Text\RegularExpressions\RegexCompiler.cs (4)
2051new RegexNode(RegexNodeKind.Empty, child.Options)); 2288RegexNode? noBranch = node.Child(1) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 2449RegexNode? noBranch = node.Child(2) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 3039case RegexNodeKind.Empty:
System\Text\RegularExpressions\RegexNode.cs (32)
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) 1296case RegexNodeKind.Empty when !seenEmpty: 1300case RegexNodeKind.Empty: 1438node.Kind = RegexNodeKind.Empty; 1447node.Kind = RegexNodeKind.Empty; 1689return new RegexNode(RegexNodeKind.Empty, Options); 1785else if (at.Kind == RegexNodeKind.Empty) 2213child.Kind is RegexNodeKind.Empty) 2223if (child.Kind is RegexNodeKind.Empty) 2285AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2303AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2720case RegexNodeKind.Empty: 2747goto case RegexNodeKind.Empty; 2858case RegexNodeKind.Empty: 2884goto case RegexNodeKind.Empty; 2957else if (child.Kind is RegexNodeKind.Empty) 3058return 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>