| File: IDifferenceVisitor.cs | Web Access |
| Project: src\sdk\src\Compatibility\ApiCompat\Microsoft.DotNet.ApiCompatibility\Microsoft.DotNet.ApiCompatibility.csproj (Microsoft.DotNet.ApiCompatibility) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using Microsoft.DotNet.ApiCompatibility.Mapping; namespace Microsoft.DotNet.ApiCompatibility { /// <summary> /// A visitor that traverses a given mapping tree and stores differences in the <see cref="CompatDifferences"/> collection. /// </summary> public interface IDifferenceVisitor { /// <summary> /// A list of <see cref="CompatDifference"/> items which are associated with <see cref="MetadataInformation" />. /// </summary> IEnumerable<CompatDifference> CompatDifferences { get; } /// <summary> /// Visits the mapping tree for a given <see cref="IElementMapper{T}"/>. /// </summary> /// <typeparam name="T">Underlying type for the objects that the mapper holds.</typeparam> /// <param name="mapper">The <see cref="IElementMapper{T}"/> to visit.</param> void Visit<T>(IElementMapper<T> mapper); /// <summary> /// Visits the <see cref="IAssemblySetMapper"/> and visits each <see cref="IAssemblyMapper"/> in the mapper. /// </summary> /// <param name="mapper">The <see cref="IAssemblySetMapper"/> to visit.</param> void Visit(IAssemblySetMapper mapper); /// <summary> /// Visits an <see cref="IAssemblyMapper"/> and stores differences in the <see cref="CompatDifferences"/> collection. /// </summary> /// <param name="assembly">The <see cref="IAssemblyMapper"/> to visit.</param> void Visit(IAssemblyMapper assembly); /// <summary> /// Visits an <see cref="INamespaceMapper"/> and stores differences in the <see cref="CompatDifferences"/> collection. /// </summary> /// <param name="namespace">The <see cref="INamespaceMapper"/> to visit.</param> void Visit(INamespaceMapper @namespace); /// <summary> /// Visits an <see cref="ITypeMapper"/> and stores differences in the <see cref="CompatDifferences"/> collection. /// </summary> /// <param name="type">The <see cref="ITypeMapper"/> to visit.</param> void Visit(ITypeMapper type); /// <summary> /// Visits an <see cref="IMemberMapper"/> and stores differences in the <see cref="CompatDifferences"/> collection. /// </summary> /// <param name="member">The <see cref="IMemberMapper"/> to visit.</param> void Visit(IMemberMapper member); } }