| File: Rules\RuleSettings.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.CodeAnalysis; using Microsoft.DotNet.ApiSymbolExtensions.Filtering; namespace Microsoft.DotNet.ApiCompatibility.Rules { /// <summary> /// General rule settings that are passed to the rules. /// </summary> public interface IRuleSettings { /// <summary> /// The symbol filter. /// </summary> ISymbolFilter SymbolFilter { get; } /// <summary> /// The symbol equality comparer. /// </summary> IEqualityComparer<ISymbol> SymbolEqualityComparer { get; } /// <summary> /// The attribute data symbol filter. This filter is responsible for all filtering of the application of attributes, including visibility. /// </summary> ISymbolFilter AttributeDataSymbolFilter { get; } /// <summary> /// The attribute data equality comparer. /// </summary> IEqualityComparer<AttributeData> AttributeDataEqualityComparer { get; } /// <summary> /// Determines if internal members should be validated. /// </summary> bool IncludeInternalSymbols { get; } /// <summary> /// Flag indicating whether api comparison should be performed in strict mode. /// If true, the behavior of some rules will change and some other rules will be /// executed when getting the differences. This is useful when both sides' surface area /// which are compared, should not differ. /// </summary> bool StrictMode { get; } } }