46 references to Empty
System.Text.RegularExpressions (46)
System\Text\RegularExpressions\RegexCompiler.cs (3)
2061RegexNode? noBranch = node.Child(1) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 2222RegexNode? noBranch = node.Child(2) is { Kind: not RegexNodeKind.Empty } childNo ? childNo : null; 2812case 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) 1305case RegexNodeKind.Empty when !seenEmpty: 1309case RegexNodeKind.Empty: 1447node.Kind = RegexNodeKind.Empty; 1456node.Kind = RegexNodeKind.Empty; 1628return new RegexNode(RegexNodeKind.Empty, Options); 1724else if (at.Kind == RegexNodeKind.Empty) 2152child.Kind is RegexNodeKind.Empty) 2162if (child.Kind is RegexNodeKind.Empty) 2224AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2242AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2659case RegexNodeKind.Empty: 2686goto case RegexNodeKind.Empty; 2797case RegexNodeKind.Empty: 2823goto case RegexNodeKind.Empty; 2896else if (child.Kind is RegexNodeKind.Empty) 2997return 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>