1 implementation of ILocalFunctionOperation
Microsoft.CodeAnalysis (1)
Generated\Operations.Generated.cs (1)
4956internal sealed partial class LocalFunctionOperation : Operation, ILocalFunctionOperation
95 references to ILocalFunctionOperation
GenerateDocumentationAndConfigFiles (6)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (2)
334operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 363nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
ILLink.RoslynAnalyzer (5)
IOperationExtensions.cs (2)
224return ((ILocalFunctionOperation)operation).Symbol; 299case ILocalFunctionOperation local:
PointerSignatureRequiresUnsafeAnalyzer.cs (1)
51((ILocalFunctionOperation)context.Operation).Symbol,
RequiresAnalyzerBase.cs (1)
247case ILocalFunctionOperation local when targets.HasFlag(DiagnosticTargets.MethodOrConstructor):
UnsafeMemberMissingSafetyDocumentationAnalyzer.cs (1)
54((ILocalFunctionOperation)context.Operation).Symbol,
Microsoft.AspNetCore.App.Analyzers (1)
RouteHandlers\RouteHandlerAnalyzer.cs (1)
131if (methodOperation is ILocalFunctionOperation { Body: not null } localFunction)
Microsoft.AspNetCore.Components.Analyzers (1)
JSInteropAnalyzer.cs (1)
127case ILocalFunctionOperation:
Microsoft.AspNetCore.Http.RequestDelegateGenerator (1)
StaticRouteHandlerModel\InvocationOperationExtensions.cs (1)
98ILocalFunctionOperation local => local.Symbol,
Microsoft.AspNetCore.Mvc.Analyzers (1)
TagHelpersInCodeBlocksAnalyzer.cs (1)
73ILocalFunctionOperation localFunctionOperation => localFunctionOperation.Symbol,
Microsoft.CodeAnalysis (20)
Generated\OperationKind.Generated.cs (1)
50/// <summary>Indicates an <see cref="ILocalFunctionOperation"/>.</summary>
Generated\Operations.Generated.cs (3)
10943public override IOperation VisitLocalFunction(ILocalFunctionOperation operation, object? argument) 11508public virtual void VisitLocalFunction(ILocalFunctionOperation operation) => DefaultVisit(operation); 11649public virtual TResult? VisitLocalFunction(ILocalFunctionOperation operation, TArgument argument) => DefaultVisit(operation, argument);
Operations\ControlFlowGraph.cs (3)
27private readonly ImmutableDictionary<IMethodSymbol, (ControlFlowRegion region, ILocalFunctionOperation operation, int ordinal)> _localFunctionsMap; 37ImmutableDictionary<IMethodSymbol, (ControlFlowRegion region, ILocalFunctionOperation operation, int ordinal)> localFunctionsMap, 246if (!_localFunctionsMap.TryGetValue(localFunction, out (ControlFlowRegion enclosing, ILocalFunctionOperation operation, int ordinal) info))
Operations\ControlFlowGraphBuilder.cs (4)
128builder.VisitLocalFunctionAsRoot((ILocalFunctionOperation)body); 150var localFunctionsMap = ImmutableDictionary.CreateBuilder<IMethodSymbol, (ControlFlowRegion, ILocalFunctionOperation, int)>(); 6447public override IOperation? VisitLocalFunction(ILocalFunctionOperation operation, int? captureIdForResult) 6463private IOperation? VisitLocalFunctionAsRoot(ILocalFunctionOperation operation)
Operations\ControlFlowGraphBuilder.RegionBuilder.cs (9)
24public ArrayBuilder<(IMethodSymbol, ILocalFunctionOperation)>? LocalFunctions = null; 94public void Add(IMethodSymbol symbol, ILocalFunctionOperation operation) 102LocalFunctions = ArrayBuilder<(IMethodSymbol, ILocalFunctionOperation)>.GetInstance(); 108public void AddRange(ArrayBuilder<(IMethodSymbol, ILocalFunctionOperation)>? others) 117Debug.Assert(others.All(((IMethodSymbol m, ILocalFunctionOperation _) tuple) => tuple.m.MethodKind == MethodKind.LocalFunction)); 121LocalFunctions = ArrayBuilder<(IMethodSymbol, ILocalFunctionOperation)>.GetInstance(); 298ImmutableDictionary<IMethodSymbol, (ControlFlowRegion region, ILocalFunctionOperation operation, int ordinal)>.Builder localFunctionsMap, 339LocalFunctions?.SelectAsArray(((IMethodSymbol, ILocalFunctionOperation) tuple) => tuple.Item1) ?? default, 346foreach ((IMethodSymbol method, ILocalFunctionOperation operation) in LocalFunctions)
Microsoft.CodeAnalysis.Analyzers (6)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (2)
334operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 363nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
Microsoft.CodeAnalysis.AnalyzerUtilities (9)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (2)
334operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 363nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol);
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (3)
3399case ILocalFunctionOperation localFunctionOperation: 4092public sealed override TAbstractAnalysisValue VisitLocalFunction(ILocalFunctionOperation operation, object? argument) 4094throw new NotSupportedException($"'{nameof(ILocalFunctionOperation)}' must have been lowered in the CFG");
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
Microsoft.CodeAnalysis.CodeStyle (5)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
478ILocalFunctionOperation localFunction => localFunction.Symbol.Parameters,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\roslyn\src\Analyzers\Core\CodeFixes\MakeMethodAsynchronous\AbstractMakeMethodAsynchronousCodeFixProvider.cs (1)
165if (operation is IAnonymousFunctionOperation or ILocalFunctionOperation)
Microsoft.CodeAnalysis.CSharp (1)
Operations\CSharpOperationFactory.cs (1)
1018private ILocalFunctionOperation CreateBoundLocalFunctionStatementOperation(BoundLocalFunctionStatement boundLocalFunctionStatement)
Microsoft.CodeAnalysis.Features (2)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
478ILocalFunctionOperation localFunction => localFunction.Symbol.Parameters,
src\roslyn\src\Analyzers\Core\CodeFixes\MakeMethodAsynchronous\AbstractMakeMethodAsynchronousCodeFixProvider.cs (1)
165if (operation is IAnonymousFunctionOperation or ILocalFunctionOperation)
Microsoft.CodeAnalysis.NetAnalyzers (16)
Microsoft.CodeQuality.Analyzers\Maintainability\UseNameofInPlaceOfString.cs (1)
113ILocalFunctionOperation localFunctionOperation => localFunctionOperation.Symbol,
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DelegateInteropUsageAnalyzer.cs (2)
108var functionPointerInvocation = (ILocalFunctionOperation)context.Operation;
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DisabledRuntimeMarshallingAssemblyAnalyzer.cs (2)
113var functionPointerInvocation = (ILocalFunctionOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\AvoidSingleUseOfLocalJsonSerializerOptions.cs (1)
284ILocalFunctionOperation localFunc => localFunc.Body,
Microsoft.NetCore.Analyzers\Runtime\AvoidRedundantRegexIsMatchBeforeMatch.cs (2)
656if (operation is IAnonymousFunctionOperation or ILocalFunctionOperation) 697if (child is IAnonymousFunctionOperation or ILocalFunctionOperation)
Microsoft.NetCore.Analyzers\Runtime\ForwardCancellationTokenToInvocations.Analyzer.cs (1)
213ancestor = ((ILocalFunctionOperation)currentOperation).Symbol;
Microsoft.NetCore.Analyzers\Runtime\InstantiateArgumentExceptionsCorrectly.cs (1)
229symbol = ((ILocalFunctionOperation)operation).Symbol;
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\Compiler\Extensions\IOperationExtensions.cs (3)
504operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 533nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol); 1132return ((ILocalFunctionOperation)operation).Symbol;
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (3)
3396case ILocalFunctionOperation localFunctionOperation: 4089public sealed override TAbstractAnalysisValue VisitLocalFunction(ILocalFunctionOperation operation, object? argument) 4091throw new NotSupportedException($"'{nameof(ILocalFunctionOperation)}' must have been lowered in the CFG");
Microsoft.CodeAnalysis.ResxSourceGenerator (6)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (2)
334operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 363nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
Microsoft.CodeAnalysis.Workspaces (4)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
Microsoft.Extensions.Validation.ValidationsGenerator (1)
src\768f3af0174e68df\InvocationOperationExtensions.cs (1)
98ILocalFunctionOperation local => local.Symbol,
Roslyn.Diagnostics.Analyzers (7)
AbstractDoNotCopyValue.cs (1)
907public override void VisitLocalFunction(ILocalFunctionOperation operation)
src\b310f676f7308b7f\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
300case ILocalFunctionOperation localFunctionOperation:
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (2)
334operation is ILocalFunctionOperation localFunction && localFunction.Symbol.OriginalDefinition.Equals(lambdaOrLocalFunction.OriginalDefinition)); 363nestedLambdasAndLocalFunctions.Add(((ILocalFunctionOperation)child).Symbol);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
250return ((ILocalFunctionOperation)operation).Symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.cs (1)
47.FirstOrDefault(o => Equals((o as ILocalFunctionOperation)?.Symbol, localFunction));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.Walker.cs (1)
371public override void VisitLocalFunction(ILocalFunctionOperation operation)
System.Private.CoreLib.Generators (2)
IntrinsicsInSystemPrivateCoreLibAnalyzer.cs (2)
501ILocalFunctionOperation localFunctionOperation = (ILocalFunctionOperation)operationSearch;