1 instantiation of ComMethodContext
Microsoft.Interop.ComInterfaceGenerator (1)
ComInterfaceGenerator.cs (1)
104
methodContexts.Add(new
ComMethodContext
(
26 references to ComMethodContext
Microsoft.Interop.ComInterfaceGenerator (26)
ComInterfaceAndMethodsContext.cs (4)
13
internal sealed record ComInterfaceAndMethodsContext(ComInterfaceContext Interface, SequenceEqualImmutableArray<
ComMethodContext
> Methods)
18
public IEnumerable<
ComMethodContext
> DeclaredMethods => Methods.Where(m => !m.IsInheritedMethod);
23
public IEnumerable<
ComMethodContext
> ShadowingMethods => Methods.Where(m => m.IsInheritedMethod && !m.IsHiddenOnDerivedInterface && !m.IsExternallyDefined);
28
public IEnumerable<
ComMethodContext
> InheritedMethods => Methods.Where(m => m.IsInheritedMethod);
ComInterfaceGenerator.cs (17)
46
MethodContexts: ImmutableArray<
ComMethodContext
>.Empty.ToSequenceEqual()
99
var result =
ComMethodContext
.CalculateAllMethods(ifaceCtxs, ct);
101
List<
ComMethodContext
> methodContexts = new();
403
private static ImmutableArray<ComInterfaceAndMethodsContext> GroupComContextsForInterfaceGeneration(ImmutableArray<
ComMethodContext
> methods, ImmutableArray<ComInterfaceContext> interfaces, CancellationToken ct)
428
var methodList = ImmutableArray.CreateBuilder<
ComMethodContext
>();
431
var
method = methods[methodIndex];
439
var
potentialShadowedMethod = methodList[i];
459
static bool MethodEquals(
ComMethodContext
a,
ComMethodContext
b)
480
foreach (
ComMethodContext
inheritedMethod in interfaceMethods.InheritedMethods)
490
foreach (
ComMethodContext
declaredMethod in
554
foreach (
ComMethodContext
declaredMethodContext in data.DeclaredMethods
564
foreach (
ComMethodContext
declaredMethod in data.DeclaredMethods)
580
foreach (
ComMethodContext
inheritedStub in data.InheritedMethods)
596
foreach (
ComMethodContext
inheritedStub in data.InheritedMethods)
617
(ContainingSyntax syntax, IEnumerable<
ComMethodContext
>? shadowingMethods) = data;
624
foreach (
ComMethodContext
shadow in shadowingMethods)
ComMethodContext.cs (5)
17
internal sealed class ComMethodContext : IEquatable<
ComMethodContext
>
20
/// A partially constructed <see cref="
ComMethodContext
"/> that does not have a <see cref="SourceAvailableIncrementalMethodStubGenerationContext"/> generated for it yet.
31
/// The fully-constructed immutable state for a <see cref="
ComMethodContext
"/>.
52
public override bool Equals(object obj) => obj is
ComMethodContext
other && Equals(other);
56
public bool Equals(
ComMethodContext
other) => _state.Equals(other);