/// <summary> /// Visits a single <see cref="CompareNodeCollection"/>. /// </summary> /// <param name="node">The node to visit.</param> protected internal override void VisitCollection(CompareNodeCollection node) => DefaultVisit(node);
/// <summary> /// Visits a single <see cref="CompareNodeCollection"/>. /// </summary> /// <param name="node">The node to visit.</param> protected internal abstract void VisitCollection(CompareNodeCollection node);
/// <summary> /// Visits a single <see cref="CompareNodeCollection"/> and produces a value of type <typeparamref name="TResult"/>. /// </summary> /// <param name="node">The node to visit.</param> /// <returns>If the node was not null, the value produced by visiting it. Otherwise, the default value of <typeparamref name="TResult"/>.</returns> protected internal abstract TResult VisitCollection(CompareNodeCollection node);
public CompareNodeCollectionDebugView(CompareNodeCollection node) { this.node = node; }
/// <summary> /// Visits the children of a <see cref="CompareNodeCollection"/> and replaces the node if any of its children are modified. /// </summary> /// <param name="node">The node to visit.</param> /// <returns>If any children were modified, a new node with the modified children. Otherwise, the original node.</returns> protected internal override CompareNode VisitCollection(CompareNodeCollection node) { return(node.WithChildren(VisitList(node.Children))); }