14 writes to Parent
System.Text.RegularExpressions (14)
System\Text\RegularExpressions\RegexNode.cs (11)
486reduced.Parent = this; 1149atChildren[k].Parent = this; 1156atChild.Parent = this; 1808atChildren[k].Parent = this; 1815atChild.Parent = this; 3323newChild.Parent = this; // so that the child can see its parent while being reduced 3325newChild.Parent = this; // in case Reduce returns a different node that needs to be reparented 3345newChild.Parent = this; // so that the child can see its parent while being reduced 3347newChild.Parent = this; // in case Reduce returns a different node that needs to be reparented 3357newChild.Parent = this; // so that the child can see its parent while being reduced 3359newChild.Parent = this; // in case Reduce returns a different node that needs to be reparented
System\Text\RegularExpressions\RegexParser.cs (3)
2213_group!.Parent = _stack; 2214_alternation!.Parent = _group; 2215_concatenation!.Parent = _alternation;
17 references to Parent
System.Text.RegularExpressions (17)
System\Text\RegularExpressions\RegexCompiler.cs (1)
1684Debug.Assert(node.Parent is not null);
System\Text\RegularExpressions\RegexNode.cs (12)
46/// During parsing, top-level nodes are also stacked onto a parse stack (a stack of trees) using <see cref="Parent"/>. 47/// After parsing, <see cref="Parent"/> is the node in the tree that has this node as or in <see cref="Children"/>. 205if (Parent is not { Kind: RegexNodeKind.Atomic }) 256Debug.Assert(child.Parent == node, $"{child.Describe()} missing reference to parent {node.Describe()}"); 373Debug.Assert(rootNode.Parent is null); 440if (node.Parent is { Kind: RegexNodeKind.Concatenate } parent) 546node.Parent is not { Kind: RegexNodeKind.Atomic }) // validate grandparent isn't atomic 1316if (alternation.Parent is RegexNode { Kind: RegexNodeKind.Atomic }) 1523if (alternation.Parent is RegexNode parent && parent.Kind == RegexNodeKind.Atomic) 2696RegexNode? parent = node.Parent; 2790node.Parent is not RegexNode parent) 3481curNode = curNode.Parent;
System\Text\RegularExpressions\RegexParser.cs (3)
2223_alternation = _concatenation!.Parent; 2224_group = _alternation!.Parent; 2225_stack = _group!.Parent;
System\Text\RegularExpressions\RegexWriter.cs (1)
103curNode = curNode.Parent!;