SignatureHelp\InvocationExpressionSignatureHelpProviderBase_DelegateAndFunctionPointerInvoke.cs (5)
19private static IMethodSymbol? GetDelegateInvokeMethod(
23var invokeMethod = delegateType.DelegateInvokeMethod;
40private static IList<SignatureHelpItem> GetDelegateOrFunctionPointerInvokeItems(InvocationExpressionSyntax invocationExpression, IMethodSymbol invokeMethod, SemanticModel semanticModel, IStructuralTypeDisplayService structuralTypeDisplayService, IDocumentationCommentFormattingService documentationCommentFormattingService, out int? selectedItem, CancellationToken cancellationToken)
59private static IList<SymbolDisplayPart> GetDelegateOrFunctionPointerInvokePreambleParts(IMethodSymbol invokeMethod, SemanticModel semanticModel, int position)
81IMethodSymbol invokeMethod, SemanticModel semanticModel, int position, IDocumentationCommentFormattingService formattingService, CancellationToken cancellationToken)
AbstractMakeMethodAsynchronousCodeFixProvider.cs (9)
29bool keepVoid, IMethodSymbol methodSymbol, SyntaxNode node, KnownTypes knownTypes, CancellationToken cancellationToken);
58var methodSymbol = GetMethodSymbol(semanticModel, node, cancellationToken);
87private static IMethodSymbol? GetMethodSymbol(SemanticModel semanticModel, SyntaxNode node, CancellationToken cancellationToken)
91return symbol as IMethodSymbol;
116var methodSymbol = GetMethodSymbol(semanticModel, node, cancellationToken);
158IMethodSymbol methodSymbol,
177var newMethod = (IMethodSymbol)semanticModel.GetRequiredDeclaredSymbol(newNode, cancellationToken);
187IMethodSymbol methodSymbol,
AbstractMakeMethodSynchronousCodeFixProvider.cs (8)
25protected abstract SyntaxNode RemoveAsyncTokenAndFixReturnType(IMethodSymbol methodSymbol, SyntaxNode node, KnownTypes knownTypes);
58var methodSymbol = (IMethodSymbol?)(semanticModel.GetDeclaredSymbol(node, cancellationToken) ?? semanticModel.GetSymbolInfo(node, cancellationToken).GetAnySymbol());
73private async Task<Solution> RenameThenRemoveAsyncTokenAsync(Document document, SyntaxNode node, IMethodSymbol methodSymbol, CancellationToken cancellationToken)
89var newMethod = (IMethodSymbol)semanticModel.GetRequiredDeclaredSymbol(newNode, cancellationToken);
97Document document, IMethodSymbol methodSymbol, SyntaxNode node, CancellationToken cancellationToken)
128if (semanticModel.GetDeclaredSymbol(methodDeclaration, cancellationToken) is IMethodSymbol methodSymbol)
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionHelper.cs (5)
139Compilation compilation, ImmutableArray<IMethodSymbol> extentsionMethodSymbols, ImmutableArray<ITypeSymbol> targetTypeSymbols, CancellationToken cancellationToken)
143using var _2 = PooledDictionary<(string containingNamespace, string methodName, bool isGeneric), (IMethodSymbol bestSymbol, int overloadCount, bool includeInTargetTypedCompletion)>
147foreach (var symbol in extentsionMethodSymbols)
151IMethodSymbol bestSymbol;
208Compilation compilation, IMethodSymbol methodSymbol, ImmutableArray<ITypeSymbol> targetTypeSymbols,
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionHelper.SymbolComputer.cs (22)
92public async Task<(ImmutableArray<IMethodSymbol> symbols, bool isPartialResult)> GetExtensionMethodSymbolsAsync(bool forceCacheCreation, bool hideAdvancedMembers, CancellationToken cancellationToken)
97using var _1 = ArrayBuilder<Task<ImmutableArray<IMethodSymbol>?>>.GetInstance(out var tasks);
115using var _2 = ArrayBuilder<IMethodSymbol>.GetInstance(out var symbols);
158private async Task<ImmutableArray<IMethodSymbol>?> GetExtensionMethodSymbolsFromProjectAsync(
176return ImmutableArray<IMethodSymbol>.Empty;
193private async ValueTask<ImmutableArray<IMethodSymbol>?> GetExtensionMethodSymbolsFromPeReferenceAsync(
223return ImmutableArray<IMethodSymbol>.Empty;
234private ImmutableArray<IMethodSymbol> GetExtensionMethodsForSymbolsFromDifferentCompilation(
235MultiDictionary<ITypeSymbol, IMethodSymbol> matchingMethodSymbols,
238using var _ = ArrayBuilder<IMethodSymbol>.GetInstance(out var builder);
269foreach (var methodInOriginatingCompilation in methodSymbols.Select(s => SymbolFinder.FindSimilarSymbols(s, _originatingSemanticModel.Compilation).FirstOrDefault()).WhereNotNull())
283var reducedMethodSymbol = methodInOriginatingCompilation.ReduceExtensionMethod(_receiverTypeSymbol);
306private ImmutableArray<IMethodSymbol> GetExtensionMethodsForSymbolsFromSameCompilation(
307MultiDictionary<ITypeSymbol, IMethodSymbol> matchingMethodSymbols,
310using var _ = ArrayBuilder<IMethodSymbol>.GetInstance(out var builder);
328var reducedMethodSymbol = methodSymbols.First().ReduceExtensionMethod(_receiverTypeSymbol);
337foreach (var methodSymbol in methodSymbols)
350private MultiDictionary<ITypeSymbol, IMethodSymbol> GetPotentialMatchingSymbolsFromAssembly(
356var builder = new MultiDictionary<ITypeSymbol, IMethodSymbol>();
387var methodSymbols = containerSymbol.GetMembers(methodName).OfType<IMethodSymbol>();
389foreach (var methodSymbol in methodSymbols)
402static bool MatchExtensionMethod(IMethodSymbol method, string filterReceiverTypeName, bool internalsVisible, out ITypeSymbol? receiverType)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (47)
294protected abstract bool AreHandledEventsEqual(IMethodSymbol oldMethod, IMethodSymbol newMethod);
333SymbolKind.Method => GetDisplayName((IMethodSymbol)symbol),
359internal virtual string GetDisplayName(IMethodSymbol symbol)
434internal abstract IMethodSymbol GetLambdaExpressionSymbol(SemanticModel model, SyntaxNode lambdaExpression, CancellationToken cancellationToken);
1057if (newSymbol is IMethodSymbol { IsAsync: true })
2298protected static bool ReturnTypesEquivalent(IMethodSymbol oldMethod, IMethodSymbol newMethod, bool exact)
2371var oldMethod = (IMethodSymbol)oldMember;
2372var newMethod = (IMethodSymbol)newMember;
2632if (newSymbol != null && !(newSymbol is IMethodSymbol newMethod && newMethod.IsPartialDefinition))
3132if (oldSymbol is IMethodSymbol oldMethod &&
3133newSymbol is IMethodSymbol newMethod)
3358Debug.Assert(containingSymbol is IPropertySymbol or IMethodSymbol);
3374if (containingSymbol is IMethodSymbol { IsPartialDefinition: true })
3451if (symbol is IMethodSymbol
3477Debug.Assert(symbol is IMethodSymbol or IPropertySymbol or IEventSymbol);
3480if (symbol is IMethodSymbol)
3717else if (oldSymbol is IMethodSymbol oldMethod && newSymbol is IMethodSymbol newMethod)
3799if (oldSymbol is not IMethodSymbol { AssociatedSymbol: not null })
3829else if (oldSymbol is IMethodSymbol oldMethod && newSymbol is IMethodSymbol newMethod)
3972if (oldSymbol is not IMethodSymbol { AssociatedSymbol: not null })
4081private void AnalyzeReturnType(IMethodSymbol oldMethod, IMethodSymbol newMethod, EditAndContinueCapabilitiesGrantor capabilities, ref RudeEditKind rudeEdit, ref bool hasGeneratedReturnTypeAttributeChange, ref bool hasReturnTypeChange, CancellationToken cancellationToken)
4176=> parameter is { Ordinal: 0, ContainingSymbol: IMethodSymbol { IsExtensionMethod: true } };
4206if (newSymbol.ContainingSymbol is IMethodSymbol { AssociatedSymbol: IEventSymbol associatedSymbol } &&
4332if (oldSymbol is IMethodSymbol oldMethod &&
4333newSymbol is IMethodSymbol newMethod)
4508if (newSymbol is IMethodSymbol or IEventSymbol or IPropertySymbol)
4541var result = record.GetMembers(WellKnownMemberNames.PrintMembersMethodName)
4542.OfType<IMethodSymbol>()
4554.OfType<IMethodSymbol>()
4565.OfType<IMethodSymbol>()
4891foreach (var newCtor in isStatic ? newType.StaticConstructors : newType.InstanceConstructors)
4939Contract.ThrowIfFalse(oldCtor is IMethodSymbol { MethodKind: MethodKind.Constructor or MethodKind.StaticConstructor });
5529var containingLambda = parameter.ContainingSymbol as IMethodSymbol;
5861var oldLambdaSymbol = GetLambdaExpressionSymbol(oldModel, oldLambda, cancellationToken);
5862var newLambdaSymbol = GetLambdaExpressionSymbol(newModel, newLambda, cancellationToken);
5918if ((member as IMethodSymbol)?.MethodKind == MethodKind.AnonymousFunction || HasParameterClosureScope(member))
5963if (oldMember is not IMethodSymbol oldMethod)
6053=> symbol is IMethodSymbol { Name: WellKnownMemberNames.TopLevelStatementsEntryPointMethodName };
6061if (current is IMethodSymbol { Arity: > 0 })
GenerateEqualsAndGetHashCodeFromMembers\IGenerateEqualsAndGetHashCodeService.cs (4)
29Task<IMethodSymbol> GenerateEqualsMethodAsync(Document document, INamedTypeSymbol namedType, ImmutableArray<ISymbol> members, string? localNameOpt, CancellationToken cancellationToken);
35Task<IMethodSymbol> GenerateEqualsMethodThroughIEquatableEqualsAsync(Document document, INamedTypeSymbol namedType, CancellationToken cancellationToken);
41Task<IMethodSymbol> GenerateIEquatableEqualsMethodAsync(Document document, INamedTypeSymbol namedType, ImmutableArray<ISymbol> members, INamedTypeSymbol constructedEquatableType, CancellationToken cancellationToken);
50Task<IMethodSymbol> GenerateGetHashCodeMethodAsync(Document document, INamedTypeSymbol namedType, ImmutableArray<ISymbol> members, CancellationToken cancellationToken);
GenerateMember\GenerateParameterizedMember\AbstractGenerateConversionService.cs (2)
26protected abstract bool TryInitializeImplicitConversionState(SemanticDocument document, SyntaxNode expression, ISet<TypeKind> classInterfaceModuleStructTypes, CancellationToken cancellationToken, out SyntaxToken identifierToken, out IMethodSymbol methodSymbol, out INamedTypeSymbol typeToGenerateIn);
27protected abstract bool TryInitializeExplicitConversionState(SemanticDocument document, SyntaxNode expression, ISet<TypeKind> classInterfaceModuleStructTypes, CancellationToken cancellationToken, out SyntaxToken identifierToken, out IMethodSymbol methodSymbol, out INamedTypeSymbol typeToGenerateIn);
ImplementAbstractClass\ImplementAbstractClassData.cs (7)
170IMethodSymbol method => GenerateMethod(compilation, method, throughMember, modifiers, accessibility),
178Compilation compilation, IMethodSymbol method, ISymbol? throughMember,
213var getMethod = ShouldGenerateAccessor(property.GetMethod)
222var setMethod = ShouldGenerateAccessor(property.SetMethod)
249private IMethodSymbol? GetEventAddOrRemoveMethod(
250IEventSymbol @event, IMethodSymbol? accessor, ISymbol? throughMember,
268private bool ShouldGenerateAccessor([NotNullWhen(true)] IMethodSymbol? method)
InitializeParameter\AbstractAddParameterCheckCodeRefactoringProvider.cs (10)
52IMethodSymbol methodSymbol,
86IMethodSymbol methodSymbol,
163document = await AddStringCheckAsync(document, parameter, functionDeclaration, (IMethodSymbol)parameter.ContainingSymbol, blockStatementOpt, nameof(string.IsNullOrEmpty), lazySimplifierOptions, cancellationToken).ConfigureAwait(false);
169(IMethodSymbol)parameter.ContainingSymbol, blockStatementOpt, lazySimplifierOptions, cancellationToken).ConfigureAwait(false);
301var targetMethod = invocation.TargetMethod;
316IMethodSymbol method,
339IMethodSymbol method,
355IMethodSymbol method,
415var methodSymbol = (IMethodSymbol)parameter.ContainingSymbol;
IntroduceParameter\AbstractIntroduceParameterCodeRefactoringProvider.cs (5)
44protected abstract bool IsDestructor(IMethodSymbol methodSymbol);
72if (containingSymbol is not IMethodSymbol methodSymbol)
138TExpressionSyntax expression, IMethodSymbol methodSymbol, SyntaxNode containingMethod, CodeGenerationOptionsProvider fallbackOptions,
230IMethodSymbol methodSymbol, SyntaxNode containingMethod, bool allOccurrences, IntroduceParameterCodeActionKind selectedCodeAction,
256Document document, IMethodSymbol methodSymbol, CancellationToken cancellationToken)
ReplaceMethodWithProperty\ReplaceMethodWithPropertyCodeRefactoringProvider.cs (27)
61if (semanticModel.GetDeclaredSymbol(methodDeclaration) is not IMethodSymbol methodSymbol ||
86var setMethod = FindSetMethod(methodSymbol);
103private static IMethodSymbol? FindSetMethod(IMethodSymbol getMethod)
107var setMethod = containingType.GetMembers()
108.OfType<IMethodSymbol>()
116private static bool IsValidGetMethod(IMethodSymbol getMethod)
128private static bool OverridesMethodFromSystemObject(IMethodSymbol method)
130for (var current = method; current != null; current = current.OverriddenMethod)
141private static bool IsValidSetMethod(IMethodSymbol setMethod, IMethodSymbol getMethod)
149private static bool IsValidSetMethod(IMethodSymbol setMethod)
162IMethodSymbol getMethod,
163IMethodSymbol? setMethod,
349MultiDictionary<DocumentId, IMethodSymbol>.ValueSet originalGetDefinitions,
350MultiDictionary<DocumentId, IMethodSymbol>.ValueSet originalSetDefinitions,
385foreach (var originalSetMethod in originalSetDefinitions)
389var setMethod = GetSymbolInCurrentCompilation(compilation, originalSetMethod, cancellationToken);
406MultiDictionary<DocumentId, IMethodSymbol>.ValueSet originalDefinitions,
411foreach (var originalDefinition in originalDefinitions)
415var getMethod = GetSymbolInCurrentCompilation(compilation, originalDefinition, cancellationToken);
418var setMethod = updateSetMethod ? FindSetMethod(getMethod) : null;
438private static async Task<SyntaxNode?> GetMethodDeclarationAsync(IMethodSymbol? method, CancellationToken cancellationToken)
450private static async Task<MultiDictionary<DocumentId, IMethodSymbol>> GetDefinitionsByDocumentIdAsync(
455var result = new MultiDictionary<DocumentId, IMethodSymbol>();
460var definition = referencedSymbol.Definition as IMethodSymbol;
StackTraceExplorer\StackTraceExplorerUtilities.cs (5)
63var method = await TryGetBestMatchAsync(project, fullyQualifiedTypeName, methodNode, methodArguments, methodTypeArguments, cancellationToken).ConfigureAwait(false);
81var method = await TryGetBestMatchAsync(project, fullyQualifiedTypeName, methodNode, methodArguments, methodTypeArguments, cancellationToken).ConfigureAwait(false);
94DefinitionItem GetDefinition(IMethodSymbol method)
109private static async Task<IMethodSymbol?> TryGetBestMatchAsync(Project project, string fullyQualifiedTypeName, StackFrameSimpleNameNode methodNode, StackFrameParameterList methodArguments, StackFrameTypeArgumentList? methodTypeArguments, CancellationToken cancellationToken)
120var matchingMethod = await resolver.TryGetBestMatchAsync(project, type, methodNode, methodArguments, methodTypeArguments, cancellationToken).ConfigureAwait(false);
Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ExpressionCompiler.UnitTests (2)
GenerateMember\GenerateParameterizedMember\VisualBasicGenerateConversionService.vb (6)
55Protected Overrides Function TryInitializeExplicitConversionState(document As SemanticDocument, expression As SyntaxNode, classInterfaceModuleStructTypes As ISet(Of TypeKind), cancellationToken As CancellationToken, ByRef identifierToken As SyntaxToken, ByRef methodSymbol As IMethodSymbol, ByRef typeToGenerateIn As INamedTypeSymbol) As Boolean
69Protected Overrides Function TryInitializeImplicitConversionState(document As SemanticDocument, expression As SyntaxNode, classInterfaceModuleStructTypes As ISet(Of TypeKind), cancellationToken As CancellationToken, ByRef identifierToken As SyntaxToken, ByRef methodSymbol As IMethodSymbol, ByRef typeToGenerateIn As INamedTypeSymbol) As Boolean
83Private Shared Function TryGetConversionMethodAndTypeToGenerateIn(document As SemanticDocument, expression As SyntaxNode, classInterfaceModuleStructTypes As ISet(Of TypeKind), cancellationToken As CancellationToken, ByRef methodSymbol As IMethodSymbol, ByRef typeToGenerateIn As INamedTypeSymbol) As Boolean
113Private Shared Function TryGetExplicitConversionMethodAndTypeToGenerateIn(document As SemanticDocument, castExpression As CastExpressionSyntax, classInterfaceModuleStructTypes As ISet(Of TypeKind), cancellationToken As CancellationToken, ByRef methodSymbol As IMethodSymbol, ByRef typeToGenerateIn As INamedTypeSymbol) As Boolean
129Private Shared Function TryGetImplicitConversionMethodAndTypeToGenerateIn(document As SemanticDocument, expression As SyntaxNode, classInterfaceModuleStructTypes As ISet(Of TypeKind), cancellationToken As CancellationToken, ByRef methodSymbol As IMethodSymbol, ByRef typeToGenerateIn As INamedTypeSymbol) As Boolean
145Private Shared Function GenerateMethodSymbol(typeToGenerateIn As INamedTypeSymbol, parameterSymbol As INamedTypeSymbol) As IMethodSymbol
AbstractCodeGenerationService.cs (7)
54public TDeclarationNode AddMethod<TDeclarationNode>(TDeclarationNode destination, IMethodSymbol method, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode
83public SyntaxNode? CreateMethodDeclaration(IMethodSymbol method, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken)
126protected abstract TDeclarationNode AddMethod<TDeclarationNode>(TDeclarationNode destination, IMethodSymbol method, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode;
148public abstract SyntaxNode? CreateMethodDeclaration(IMethodSymbol method, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken);
349IMethodSymbol method => CreateMethodDeclaration(method, codeGenerationDestination, info, cancellationToken),
367IMethodSymbol method => AddMethod(currentDestination, method, info, availableIndices, cancellationToken),
447public Task<Document> AddMethodAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IMethodSymbol method, CancellationToken cancellationToken)
AbstractSpeculationAnalyzer.cs (12)
343symbol = ((IMethodSymbol)symbol).GetConstructedReducedFrom()!;
348newSymbol = ((IMethodSymbol)newSymbol).GetConstructedReducedFrom()!;
370if (symbol is IMethodSymbol methodSymbol && newSymbol is IMethodSymbol newMethodSymbol)
431if (symbol is IMethodSymbol methodSymbol &&
432newSymbol is IMethodSymbol newMethodSymbol &&
743GetForEachSymbols(this.OriginalSemanticModel, forEachStatement, out var originalGetEnumerator, out var originalElementType);
744GetForEachSymbols(this.SpeculativeSemanticModel, newForEachStatement, out var newGetEnumerator, out var newElementType);
760protected abstract void GetForEachSymbols(SemanticModel model, TForEachStatementSyntax forEach, out IMethodSymbol getEnumeratorMethod, out ITypeSymbol elementType);
762private bool ReplacementBreaksForEachGetEnumerator(IMethodSymbol getEnumerator, IMethodSymbol newGetEnumerator, TExpressionSyntax newForEachStatementExpression)
839((IMethodSymbol)symbol).MethodKind == MethodKind.DelegateInvoke;
CodeGenerationSymbolFactory.cs (28)
38IMethodSymbol? addMethod = null,
39IMethodSymbol? removeMethod = null,
40IMethodSymbol? raiseMethod = null)
57IMethodSymbol? getMethod,
58IMethodSymbol? setMethod,
85ImmutableArray<IParameterSymbol> parameters, IMethodSymbol? getMethod, IMethodSymbol? setMethod,
123public static IMethodSymbol CreateConstructorSymbol(
142public static IMethodSymbol CreateDestructorSymbol(
151internal static IMethodSymbol CreateMethodSymbol(
158ImmutableArray<IMethodSymbol> explicitInterfaceImplementations,
176public static IMethodSymbol CreateMethodSymbol(
180ImmutableArray<IMethodSymbol> explicitInterfaceImplementations,
195public static IMethodSymbol CreateOperatorSymbol(
223public static IMethodSymbol CreateConversionSymbol(
248public static IMethodSymbol CreateConversionSymbol(
358internal static IMethodSymbol CreateAccessorSymbol(
359IMethodSymbol accessor,
362ImmutableArray<IMethodSymbol> explicitInterfaceImplementations = default,
384public static IMethodSymbol CreateAccessorSymbol(
472var invokeMethod = CreateMethodSymbol(
512internal static IMethodSymbol CreateMethodSymbol(
513IMethodSymbol method,
517ImmutableArray<IMethodSymbol> explicitInterfaceImplementations = default,
551IMethodSymbol? getMethod = null,
552IMethodSymbol? setMethod = null)
575IMethodSymbol? addMethod = null,
576IMethodSymbol? removeMethod = null)
SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
125SymbolKind.Method => MethodsAreEquivalent((IMethodSymbol)x, (IMethodSymbol)y, equivalentTypesWithDifferingAssemblies),
171private bool MethodsAreEquivalent(IMethodSymbol x, IMethodSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies, bool considerReturnRefKinds = false)
180var rx = x.ReducedFrom;
181var ry = y.ReducedFrom;
473internal bool ReturnTypesAreEquivalent(IMethodSymbol x, IMethodSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies = null)
SymbolKey.MethodSymbolKey.cs (22)
12private sealed class ReducedExtensionMethodSymbolKey : AbstractSymbolKey<IMethodSymbol>
16public sealed override void Create(IMethodSymbol symbol, SymbolKeyWriter visitor)
25SymbolKeyReader reader, IMethodSymbol? contextualMethod, out string? failureReason)
42using var result = PooledArrayBuilder<IMethodSymbol>.GetInstance();
43foreach (var reducedFrom in reducedFromResolution.OfType<IMethodSymbol>())
56private sealed class ConstructedMethodSymbolKey : AbstractSymbolKey<IMethodSymbol>
60public sealed override void Create(IMethodSymbol symbol, SymbolKeyWriter visitor)
67SymbolKeyReader reader, IMethodSymbol? contextualMethod, out string? failureReason)
71using var typeArguments = reader.ReadSymbolKeyArray<IMethodSymbol, ITypeSymbol>(
102using var result = PooledArrayBuilder<IMethodSymbol>.GetInstance();
103foreach (var method in constructedFrom.OfType<IMethodSymbol>())
124private sealed class MethodSymbolKey : AbstractSymbolKey<IMethodSymbol>
128public sealed override void Create(IMethodSymbol symbol, SymbolKeyWriter visitor)
161SymbolKeyReader reader, IMethodSymbol? contextualSymbol, out string? failureReason)
180using var methods = GetMembersOfNamedType<IMethodSymbol>(containingType, metadataName: null);
181IMethodSymbol? method = null;
182foreach (var candidate in methods)
224_ = reader.ReadSymbolKeyArray<IMethodSymbol, ITypeSymbol>(
244private static IMethodSymbol? Resolve(
245SymbolKeyReader reader, bool isPartialMethodImplementationPart, IMethodSymbol method)
SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (12)
36private readonly Func<IMethodSymbol, ControlFlowGraph, AnalysisData, CancellationToken, BasicBlockAnalysisData> _analyzeLocalFunctionOrLambdaInvocation;
55private readonly PooledDictionary<IMethodSymbol, ControlFlowGraph> _localFunctionTargetsToAccessingCfgMap;
79PooledHashSet<IMethodSymbol> lambdaOrLocalFunctionsBeingAnalyzed,
80Func<IMethodSymbol, ControlFlowGraph, AnalysisData, CancellationToken, BasicBlockAnalysisData> analyzeLocalFunctionOrLambdaInvocation,
82PooledDictionary<IMethodSymbol, ControlFlowGraph> localFunctionTargetsToAccessingCfgMap,
112protected override PooledHashSet<IMethodSymbol> LambdaOrLocalFunctionsBeingAnalyzed { get; }
119Func<IMethodSymbol, ControlFlowGraph, AnalysisData, CancellationToken, BasicBlockAnalysisData> analyzeLocalFunctionOrLambdaInvocation)
132lambdaOrLocalFunctionsBeingAnalyzed: PooledHashSet<IMethodSymbol>.GetInstance(),
135localFunctionTargetsToAccessingCfgMap: PooledDictionary<IMethodSymbol, ControlFlowGraph>.GetInstance(),
141IMethodSymbol lambdaOrLocalFunction,
321ControlFlowGraph TryGetLocalFunctionControlFlowGraphInScope(IMethodSymbol localFunction)
484protected override BasicBlockAnalysisData AnalyzeLocalFunctionInvocationCore(IMethodSymbol localFunction, CancellationToken cancellationToken)