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