2 instantiations of ComInterfaceInfo
Microsoft.Interop.ComInterfaceGenerator (2)
43 references to ComInterfaceInfo
Microsoft.Interop.ComInterfaceGenerator (43)
Analyzers\ComInterfaceGeneratorDiagnosticsAnalyzer.cs (17)
85var interfaceInfoCache = new ConcurrentDictionary<INamedTypeSymbol, DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)>>(SymbolEqualityComparer.Default);
118ConcurrentDictionary<INamedTypeSymbol, DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)>> interfaceInfoCache)
123DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)> ciiResult = interfaceInfoCache.GetOrAdd(
124typeSymbol, _ => ComInterfaceInfo.From(typeSymbol, ifaceSyntax, env, ct));
136(ComInterfaceInfo cii, INamedTypeSymbol _) = ciiResult.Value;
141ImmutableArray<ComInterfaceInfo> contextChain = BuildContextChain(
211private static ImmutableArray<ComInterfaceInfo> BuildContextChain(
213ComInterfaceInfo cii,
216ConcurrentDictionary<INamedTypeSymbol, DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)>> interfaceInfoCache,
221ImmutableArray<(ComInterfaceInfo, INamedTypeSymbol)> externalBases =
222ComInterfaceInfo.CreateInterfaceInfoForBaseInterfacesInOtherCompilations(typeSymbol);
229var ancestorChain = new List<ComInterfaceInfo>();
241ImmutableArray<(ComInterfaceInfo, INamedTypeSymbol)> externalInfos =
242ComInterfaceInfo.CreateInterfaceInfoForBaseInterfacesInOtherCompilations(current);
248DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)> baseResult = interfaceInfoCache.GetOrAdd(
254return DiagnosticOr<(ComInterfaceInfo, INamedTypeSymbol)>.From(
256return ComInterfaceInfo.From(sym, baseSyntax, env, ct);
ComInterfaceGenerator.cs (8)
51List<(ComInterfaceInfo, INamedTypeSymbol)> interfaceInfos = new();
52HashSet<(ComInterfaceInfo, INamedTypeSymbol)> externalIfaces = new(ComInterfaceInfo.EqualityComparerForExternalIfaces.Instance);
55var cii = ComInterfaceInfo.From(symbol, syntax, stubEnvironment, CancellationToken.None);
58var externalBase = ComInterfaceInfo.CreateInterfaceInfoForBaseInterfacesInOtherCompilations(symbol);
181ComInterfaceInfo owningInterfaceInfo,
358internal static IncrementalMethodStubGenerationContext CalculateStubInformation(MemberDeclarationSyntax? syntax, IMethodSymbol symbol, int index, StubEnvironment environment, ComInterfaceInfo owningInterface, CancellationToken ct)
570private static void WriteInterfaceInformation(IndentedTextWriter writer, ComInterfaceInfo interfaceInfo)