4 instantiations of MetadataInformation
Microsoft.DotNet.ApiCompat.Task (1)
src\sdk\src\Compatibility\ApiCompat\Microsoft.DotNet.ApiCompat.Shared\ValidateAssemblies.cs (1)
112metadataInformation.Add(new MetadataInformation(
Microsoft.DotNet.ApiCompatibility (2)
MetadataInformation.cs (2)
22public static readonly MetadataInformation DefaultLeft = new(DEFAULT_LEFT_NAME, DEFAULT_LEFT_NAME); 27public static readonly MetadataInformation DefaultRight = new(DEFAULT_RIGHT_NAME, DEFAULT_RIGHT_NAME);
Microsoft.DotNet.PackageValidation (1)
ApiCompatRunnerExtensions.cs (1)
100return new MetadataInformation(Path.GetFileName(item.Path), item.Path, package.PackagePath, assemblyReferences, displayString);
149 references to MetadataInformation
Microsoft.DotNet.ApiCompat.Task (6)
src\sdk\src\Compatibility\ApiCompat\Microsoft.DotNet.ApiCompat.Shared\ValidateAssemblies.cs (6)
41List<MetadataInformation> leftMetadataInformation = GetMetadataInformation(options.LeftAssemblies[i], GetAssemblyReferences(options.LeftAssembliesReferences, i), leftAssembliesStringTransformer); 42List<MetadataInformation> rightMetadataInformation = GetMetadataInformation(options.RightAssemblies[i], GetAssemblyReferences(options.RightAssembliesReferences, i), rightAssembliesStringTransformer); 52List<MetadataInformation> leftAssembliesMetadataInformation = new(options.LeftAssemblies.Length); 58List<MetadataInformation> rightAssembliesMetadataInformation = new(options.RightAssemblies.Length); 105private static List<MetadataInformation> GetMetadataInformation(string path, 109List<MetadataInformation> metadataInformation = [];
Microsoft.DotNet.ApiCompatibility (138)
ApiComparer.cs (7)
42return GetDifferences(new ElementContainer<IAssemblySymbol>(left, MetadataInformation.DefaultLeft), 43new ElementContainer<IAssemblySymbol>(right, MetadataInformation.DefaultRight)); 81transformedLeft.Add(new ElementContainer<IAssemblySymbol>(assemblySymbol, MetadataInformation.DefaultLeft)); 87transformedRight.Add(new ElementContainer<IAssemblySymbol>(assemblySymbol, MetadataInformation.DefaultRight)); 129private static List<CompatDifference> SortCompatDifferencesByInputMetadata(ILookup<MetadataInformation, CompatDifference> compatDifferencesLookup, 132HashSet<MetadataInformation> processedMetadata = []; 141foreach (IGrouping<MetadataInformation, CompatDifference> compatDifferenceGroup in compatDifferencesLookup)
CompatDifference.cs (8)
18public readonly struct CompatDifference(MetadataInformation left, MetadataInformation right, string diagnosticId, string message, DifferenceType type, string? memberId) : IDiagnostic, IEquatable<CompatDifference> 37public MetadataInformation Left { get; } = left; 42public MetadataInformation Right { get; } = right; 53public CompatDifference(MetadataInformation left, MetadataInformation right, string diagnosticId, string message, DifferenceType type, ISymbol member) 62new(MetadataInformation.DefaultLeft, 63MetadataInformation.DefaultRight,
ElementContainer.cs (2)
14public class ElementContainer<T>(T element, MetadataInformation metadataInformation) where T : ISymbol 24public readonly MetadataInformation MetadataInformation = metadataInformation;
IDifferenceVisitor.cs (1)
14/// A list of <see cref="CompatDifference"/> items which are associated with <see cref="MetadataInformation" />.
MetadataInformation.cs (9)
14string? displayString = null) : IEquatable<MetadataInformation> 22public static readonly MetadataInformation DefaultLeft = new(DEFAULT_LEFT_NAME, DEFAULT_LEFT_NAME); 27public static readonly MetadataInformation DefaultRight = new(DEFAULT_RIGHT_NAME, DEFAULT_RIGHT_NAME); 56obj is MetadataInformation information && Equals(information); 59public bool Equals(MetadataInformation other) => 74public static bool operator ==(MetadataInformation left, MetadataInformation right) => left.Equals(right); 77public static bool operator !=(MetadataInformation left, MetadataInformation right) => !(left == right);
Rules\AssemblyIdentityMustMatch.cs (4)
33private void RunOnAssemblySymbol(IAssemblySymbol? left, IAssemblySymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, bool singleAssembly, IList<CompatDifference> differences) 175private static CompatDifference CreateIdentityDifference(MetadataInformation left, MetadataInformation right, string format, string leftProperty, string rightProperty, string leftName, string rightName, AssemblyIdentity identity) =>
Rules\AttributesMustMatch.cs (8)
28MetadataInformation leftMetadata, 29MetadataInformation rightMetadata, 70MetadataInformation leftMetadata, 71MetadataInformation rightMetadata, 172MetadataInformation leftMetadata, 173MetadataInformation rightMetadata, 212MetadataInformation leftMetadata, 213MetadataInformation rightMetadata,
Rules\CannotAddAbstractMember.cs (2)
27private void RunOnMemberMapperAction(ISymbol? left, ISymbol? right, ITypeSymbol leftContainingType, ITypeSymbol rightContainingType, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\CannotAddMemberToInterface.cs (2)
23private void RunOnMemberSymbol(ISymbol? left, ISymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\CannotAddOrRemoveVirtualKeyword.cs (2)
25private void RunOnMemberSymbol(ISymbol? left, ISymbol? right, ITypeSymbol leftContainingType, ITypeSymbol rightContainingType, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\CannotChangeGenericConstraints.cs (6)
31MetadataInformation leftMetadata, 32MetadataInformation rightMetadata, 54MetadataInformation leftMetadata, 55MetadataInformation rightMetadata, 76MetadataInformation leftMetadata, 77MetadataInformation rightMetadata,
Rules\CannotChangeParameterName.cs (2)
22MetadataInformation leftMetadata, 23MetadataInformation rightMetadata,
Rules\CannotChangeVisibility.cs (6)
59MetadataInformation leftMetadata, 60MetadataInformation rightMetadata, 95MetadataInformation leftMetadata, 96MetadataInformation rightMetadata, 103MetadataInformation leftMetadata, 104MetadataInformation rightMetadata,
Rules\CannotRemoveBaseTypeOrInterface.cs (6)
23private void RunOnTypeSymbol(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences) 43private void ValidateBaseTypeNotRemoved(ITypeSymbol left, ITypeSymbol right, string leftName, string rightName, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences) 71private void ValidateInterfaceNotRemoved(ITypeSymbol left, ITypeSymbol right, string leftName, string rightName, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\CannotSealType.cs (2)
23private void RunOnTypeSymbol(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\EnumsMustMatch.cs (2)
21private void RunOnTypeSymbol(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\IRuleRegistrationContext.cs (8)
18void RegisterOnAssemblySymbolAction(Action<IAssemblySymbol?, IAssemblySymbol?, MetadataInformation, MetadataInformation, bool, IList<CompatDifference>> action); 24void RegisterOnTypeSymbolAction(Action<ITypeSymbol?, ITypeSymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action); 30void RegisterOnMemberSymbolAction(Action<ISymbol?, ISymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action); 38void RegisterOnMemberSymbolAction(Action<ISymbol?, ISymbol?, ITypeSymbol, ITypeSymbol, MetadataInformation, MetadataInformation, IList<CompatDifference>> action);
Rules\IRuleRunnerContext.cs (6)
13void RunOnAssemblySymbolActions(IAssemblySymbol? left, IAssemblySymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, bool isSingleAssembly, IList<CompatDifference> differences); 15void RunOnTypeSymbolActions(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences); 17void RunOnMemberSymbolActions(ISymbol? left, ISymbol? right, ITypeSymbol leftContainingType, ITypeSymbol rightContainingType, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences);
Rules\MembersMustExist.cs (4)
33private void RunOnTypeSymbol(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences) 60private void RunOnMemberSymbol(ISymbol? left, ISymbol? right, ITypeSymbol leftContainingType, ITypeSymbol rightContainingType, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences)
Rules\RuleContext.cs (30)
13private readonly List<Action<IAssemblySymbol?, IAssemblySymbol?, MetadataInformation, MetadataInformation, bool, IList<CompatDifference>>> _onAssemblySymbolActions = []; 14private readonly List<Action<ITypeSymbol?, ITypeSymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>>> _onTypeSymbolActions = []; 15private readonly List<Action<ISymbol?, ISymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>>> _onMemberSymbolActions = []; 16private readonly List<Action<ISymbol?, ISymbol?, ITypeSymbol, ITypeSymbol, MetadataInformation, MetadataInformation, IList<CompatDifference>>> _onMemberSymbolWithContainingTypeActions = []; 19public void RegisterOnAssemblySymbolAction(Action<IAssemblySymbol?, IAssemblySymbol?, MetadataInformation, MetadataInformation, bool, IList<CompatDifference>> action) 25public void RegisterOnTypeSymbolAction(Action<ITypeSymbol?, ITypeSymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action) 31public void RegisterOnMemberSymbolAction(Action<ISymbol?, ISymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action) 37public void RegisterOnMemberSymbolAction(Action<ISymbol?, ISymbol?, ITypeSymbol, ITypeSymbol, MetadataInformation, MetadataInformation, IList<CompatDifference>> action) 43public void RunOnAssemblySymbolActions(IAssemblySymbol? left, IAssemblySymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, bool isSingleAssembly, IList<CompatDifference> differences) 45foreach (Action<IAssemblySymbol?, IAssemblySymbol?, MetadataInformation, MetadataInformation, bool, IList<CompatDifference>> action in _onAssemblySymbolActions) 52public void RunOnTypeSymbolActions(ITypeSymbol? left, ITypeSymbol? right, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences) 54foreach (Action<ITypeSymbol?, ITypeSymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action in _onTypeSymbolActions) 61public void RunOnMemberSymbolActions(ISymbol? left, ISymbol? right, ITypeSymbol leftContainingType, ITypeSymbol rightContainingType, MetadataInformation leftMetadata, MetadataInformation rightMetadata, IList<CompatDifference> differences) 63foreach (Action<ISymbol?, ISymbol?, MetadataInformation, MetadataInformation, IList<CompatDifference>> action in _onMemberSymbolActions) 68foreach (Action<ISymbol?, ISymbol?, ITypeSymbol, ITypeSymbol, MetadataInformation, MetadataInformation, IList<CompatDifference>> action in _onMemberSymbolWithContainingTypeActions)
Rules\RuleRunner.cs (6)
42am.Left?.MetadataInformation ?? MetadataInformation.DefaultLeft, 43am.Right[rightIndex]?.MetadataInformation ?? MetadataInformation.DefaultRight, 53tm.ContainingNamespace.ContainingAssembly.Left?.MetadataInformation ?? MetadataInformation.DefaultLeft, 54tm.ContainingNamespace.ContainingAssembly.Right[rightIndex]?.MetadataInformation ?? MetadataInformation.DefaultRight, 71mm.ContainingType.ContainingNamespace.ContainingAssembly.Left?.MetadataInformation ?? MetadataInformation.DefaultLeft, 72mm.ContainingType.ContainingNamespace.ContainingAssembly.Right[rightIndex]?.MetadataInformation ?? MetadataInformation.DefaultRight,
Runner\ApiCompatRunner.cs (4)
39foreach (IReadOnlyList<MetadataInformation> right in workItem.Right) 100private List<ElementContainer<IAssemblySymbol>> CreateAssemblySymbols(IReadOnlyList<MetadataInformation> metadataInformation, 151foreach (IReadOnlyList<MetadataInformation> right in workItem.Right) 154foreach (IReadOnlyList<MetadataInformation> actualRight in actualWorkItem.Right)
Runner\ApiCompatRunnerWorkItem.cs (11)
12public readonly struct ApiCompatRunnerWorkItem(IReadOnlyList<MetadataInformation> left, 14IReadOnlyList<MetadataInformation> right) : IEquatable<ApiCompatRunnerWorkItem> 19public readonly IReadOnlyList<MetadataInformation> Left = left; 29public IList<IReadOnlyList<MetadataInformation>> Right { get; } = new List<IReadOnlyList<MetadataInformation>>(new IReadOnlyList<MetadataInformation>[] { right }); 34public ApiCompatRunnerWorkItem(MetadataInformation left, 36MetadataInformation right) 37: this(new MetadataInformation[] { left }, 39new MetadataInformation[] { right }) 55foreach (MetadataInformation left in Left)
Microsoft.DotNet.PackageValidation (5)
ApiCompatRunnerExtensions.cs (5)
53MetadataInformation[] left = new MetadataInformation[leftContentItems.Count]; 63MetadataInformation[] right = new MetadataInformation[rightContentItems.Count]; 74private static MetadataInformation GetMetadataInformation(ISuppressibleLog log,