486 references to Operation
Aspire.Hosting.Analyzers (1)
AppHostAnalyzer.cs (1)
57var invocation = (IInvocationOperation)context.Operation;
Aspire.Hosting.Integration.Analyzers (1)
AspireExportAnalyzer.cs (1)
337var invocation = (IInvocationOperation)context.Operation;
GenerateDocumentationAndConfigFiles (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
ILLink.RoslynAnalyzer (3)
COMAnalyzer.cs (2)
42var invocationOperation = (IInvocationOperation)operationContext.Operation; 59operationContext.Operation.Syntax.GetLocation(), targetMethod.GetDisplayName()));
RequiresAnalyzerBase.cs (1)
239var parent = operationContext.Operation.Parent;
Microsoft.Analyzers.Extra (9)
AsyncCallInsideUsingBlockAnalyzer.cs (2)
46var operation = (IUsingDeclarationOperation)analysisContext.Operation; 59var operation = (IUsingOperation)analysisContext.Operation;
CallAnalysis\CallAnalyzer.Handlers.cs (3)
23var op = (IInvocationOperation)context.Operation; 84var op = (IObjectCreationOperation)context.Operation; 102var op = (IPropertyReferenceOperation)context.Operation;
CoalesceAnalyzer.cs (2)
32var op = (ICoalesceAssignmentOperation)operationAnalysisContext.Operation; 59var op = (ICoalesceOperation)operationAnalysisContext.Operation;
ConditionalAccessAnalyzer.cs (1)
34var op = (IConditionalAccessOperation)operationAnalysisContext.Operation;
UsingToStringInLoggersAnalyzer.cs (1)
40var invocation = (IInvocationOperation)context.Operation;
Microsoft.Analyzers.Local (4)
CallAnalysis\CallAnalyzer.Handlers.cs (4)
23var op = (IInvocationOperation)context.Operation; 84var op = (IObjectCreationOperation)context.Operation; 102var op = (IPropertyReferenceOperation)context.Operation; 114var op = (IThrowOperation)context.Operation;
Microsoft.AspNetCore.Analyzers (3)
MiddlewareAnalyzer.cs (1)
33if (context.Operation is IInvocationOperation invocation &&
OptionsAnalyzer.cs (1)
27if (context.Operation is ISimpleAssignmentOperation operation &&
ServicesAnalyzer.cs (1)
28if (context.Operation is IInvocationOperation invocation &&
Microsoft.AspNetCore.App.Analyzers (8)
Authorization\AddAuthorizationBuilderAnalyzer.cs (1)
55var invocation = (IInvocationOperation)context.Operation;
Http\HeaderDictionaryAddAnalyzer.cs (1)
32var invocation = (IInvocationOperation)context.Operation;
Http\HeaderDictionaryIndexerAnalyzer.cs (1)
24var propertyReference = (IPropertyReferenceOperation)context.Operation;
Http\RequestDelegateReturnTypeAnalyzer.cs (2)
30var methodReference = (IMethodReferenceOperation)context.Operation; 46var anonymousFunction = (IAnonymousFunctionOperation)context.Operation;
RenderTreeBuilder\RenderTreeBuilderAnalyzer.cs (1)
32var invocation = (IInvocationOperation)context.Operation;
RouteHandlers\RouteHandlerAnalyzer.cs (1)
70var invocation = (IInvocationOperation)context.Operation;
WebApplicationBuilder\WebApplicationBuilderAnalyzer.cs (1)
74var invocation = (IInvocationOperation)context.Operation;
Microsoft.AspNetCore.Components.Analyzers (10)
AuthenticationStateProviderAnalyzer.cs (2)
53var invocation = (IInvocationOperation)operationContext.Operation; 64var eventAssignment = (IEventAssignmentOperation)operationContext.Operation;
ComponentParameterUsageAnalyzer.cs (2)
43if (context.Operation is IAssignmentOperation assignmentOperation) 49var incrementOrDecrementOperation = (IIncrementOrDecrementOperation)context.Operation;
InternalUsageAnalyzer.cs (4)
61var symbol = context.Operation switch 69_ => throw new InvalidOperationException("Unexpected operation kind: " + context.Operation.Kind), 139context.Operation.Syntax.GetLocation(), 149context.Operation.Syntax.GetLocation(),
InvokeAsyncOfObjectAnalyzer.cs (1)
53var invocation = (IInvocationOperation)operationContext.Operation;
StateHasChangedAnalyzer.cs (1)
63var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.AspNetCore.Components.SdkAnalyzers (6)
ComponentParameterUsageAnalyzer.cs (2)
43if (context.Operation is IAssignmentOperation assignmentOperation) 49var incrementOrDecrementOperation = (IIncrementOrDecrementOperation)context.Operation;
InternalUsageAnalyzer.cs (4)
61var symbol = context.Operation switch 69_ => throw new InvalidOperationException("Unexpected operation kind: " + context.Operation.Kind), 139context.Operation.Syntax.GetLocation(), 149context.Operation.Syntax.GetLocation(),
Microsoft.AspNetCore.Mvc.Analyzers (5)
AvoidHtmlPartialAnalyzer.cs (3)
23var method = ((IInvocationOperation)context.Operation).TargetMethod; 33context.Operation.Syntax.GetLocation(), 40context.Operation.Syntax.GetLocation(),
TagHelpersInCodeBlocksAnalyzer.cs (2)
46var awaitOperation = (IAwaitOperation)context.Operation; 60var parent = context.Operation.Parent;
Microsoft.AspNetCore.Mvc.Api.Analyzers (2)
ApiActionsDoNotRequireExplicitModelValidationCheckAnalyzer.cs (1)
39var ifOperation = (IConditionalOperation)context.Operation;
ApiConventionAnalyzer.cs (1)
48var hasUnreadableStatusCodes = !ActualApiResponseMetadataFactory.TryGetActualResponseMetadata(symbolCache, (IMethodBodyOperation)context.Operation, out var actualResponseMetadata);
Microsoft.CodeAnalysis (4)
DiagnosticAnalyzer\DiagnosticAnalysisContext.cs (4)
1811/// Syntax tree for the <see cref="Operation"/> being analyzed. 1823/// Indicates if the <see cref="Operation"/> is generated code. 1884/// Gets a <see cref="ControlFlowGraph"/> for the operation block containing the <see cref="Operation"/>. 1886public ControlFlowGraph GetControlFlowGraph() => DiagnosticAnalysisContextHelpers.GetControlFlowGraph(Operation, _getControlFlowGraph, _cancellationToken);
Microsoft.CodeAnalysis.Analyzers (34)
FixAnalyzers\FixerWithFixAllAnalyzer.cs (2)
182var invocation = (IInvocationOperation)context.Operation; 192var objectCreation = (IObjectCreationOperation)context.Operation;
ImmutableObjectMethodAnalyzer.cs (1)
81var invocation = (IInvocationOperation)context.Operation;
MetaAnalyzers\CompareSymbolsCorrectlyAnalyzer.cs (3)
127var binary = (IBinaryOperation)context.Operation; 174var invocationOperation = (IInvocationOperation)context.Operation; 262var objectCreation = (IObjectCreationOperation)context.Operation;
MetaAnalyzers\ConfigureGeneratedCodeAnalysisAnalyzer.cs (1)
110var invocation = (IInvocationOperation)context.Operation;
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer.cs (4)
255var fieldInitializer = (IFieldInitializerOperation)operationAnalysisContext.Operation; 292var fieldInitializer = (IFieldInitializerOperation)context.Operation; 340var invocation = (IInvocationOperation)context.Operation; 1279string arg1 = ((IFieldInitializerOperation)operationAnalysisContext.Operation).InitializedFields.Single().Name;
MetaAnalyzers\DoNotUseCompilationGetSemanticModelAnalyzer.cs (1)
59var invocation = (IInvocationOperation)operationContext.Operation;
MetaAnalyzers\EnableConcurrentExecutionAnalyzer.cs (1)
110var invocation = (IInvocationOperation)context.Operation;
MetaAnalyzers\PreferIsKindAnalyzer.cs (1)
72var operation = (IBinaryOperation)context.Operation;
src\roslyn\src\RoslynAnalyzers\Microsoft.CodeAnalysis.BannedApiAnalyzers\Core\SymbolIsBannedAnalyzerBase.cs (19)
88switch (context.Operation) 92VerifySymbol(context.ReportDiagnostic, objectCreation.Constructor, context.Operation.Syntax); 93VerifyType(context.ReportDiagnostic, objectCreation.Type, context.Operation.Syntax); 97VerifySymbol(context.ReportDiagnostic, invocation.TargetMethod, context.Operation.Syntax); 98VerifyType(context.ReportDiagnostic, invocation.TargetMethod.ContainingType, context.Operation.Syntax); 102VerifySymbol(context.ReportDiagnostic, memberReference.Member, context.Operation.Syntax); 103VerifyType(context.ReportDiagnostic, memberReference.Member.ContainingType, context.Operation.Syntax); 107VerifyType(context.ReportDiagnostic, arrayCreation.Type, context.Operation.Syntax); 111VerifyType(context.ReportDiagnostic, addressOf.Type, context.Operation.Syntax); 117VerifySymbol(context.ReportDiagnostic, conversion.OperatorMethod, context.Operation.Syntax); 118VerifyType(context.ReportDiagnostic, conversion.OperatorMethod.ContainingType, context.Operation.Syntax); 126VerifySymbol(context.ReportDiagnostic, unary.OperatorMethod, context.Operation.Syntax); 127VerifyType(context.ReportDiagnostic, unary.OperatorMethod.ContainingType, context.Operation.Syntax); 135VerifySymbol(context.ReportDiagnostic, binary.OperatorMethod, context.Operation.Syntax); 136VerifyType(context.ReportDiagnostic, binary.OperatorMethod.ContainingType, context.Operation.Syntax); 144VerifySymbol(context.ReportDiagnostic, incrementOrDecrement.OperatorMethod, context.Operation.Syntax); 145VerifyType(context.ReportDiagnostic, incrementOrDecrement.OperatorMethod.ContainingType, context.Operation.Syntax); 150VerifyType(context.ReportDiagnostic, typeOfOperation.TypeOperand, context.Operation.Syntax); 249=> !ShouldAnalyzeInTree(context.Operation.Syntax.SyntaxTree, context.IsGeneratedCode, context.CancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
Microsoft.CodeAnalysis.AnalyzerUtilities (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
Microsoft.CodeAnalysis.CodeStyle (36)
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (4)
169var expressionStatement = (IExpressionStatementOperation)context.Operation; 245_hasDelegateEscape = !IsHandledDelegateCreationOrAnonymousFunctionTreeShape(operationAnalysisContext.Operation); 251if (operationAnalysisContext.Operation is IParameterReferenceOperation parameterReference) 258_hasDelegateEscape = !IsHandledLocalOrParameterReferenceTreeShape(operationAnalysisContext.Operation);
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (1)
105var methodBinding = (IMethodReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\AnalyzerOptionsProvider.cs (1)
100=> GetAnalyzerOptions(context.Options, context.Operation.Syntax.SyntaxTree);
src\roslyn\src\Analyzers\Core\Analyzers\ConvertTypeofToNameof\AbstractConvertTypeOfToNameOfDiagnosticAnalyzer.cs (2)
31if (!IsValidTypeofAction(context) || !IsValidOperation(context.Operation)) 34var node = context.Operation.Syntax;
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (1)
97var fieldReference = (IFieldReferenceOperation)operationContext.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\AbstractPopulateSwitchDiagnosticAnalyzer.cs (1)
50var switchOperation = (TSwitchOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\QualifyMemberAccess\AbstractQualifyMemberAccessDiagnosticAnalyzer.cs (3)
61switch (context.Operation) 70throw ExceptionUtilities.UnexpectedValue(context.Operation); 85if (context.Operation.Parent?.Kind == OperationKind.PropertySubpattern)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveRedundantEquality\AbstractRemoveRedundantEqualityDiagnosticAnalyzer.cs (4)
34var syntax = context.Operation.Syntax; 38var operation = (IIsPatternOperation)context.Operation; 56var syntax = context.Operation.Syntax; 61var operation = (IBinaryOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (11)
258var operation = context.Operation; 363var operation = operationContext.Operation; 377var initializer = (IFieldInitializerOperation)operationContext.Operation; 397var memberReference = (IMemberReferenceOperation)operationContext.Operation; 454var parameterInitializer = (IParameterInitializerOperation)operationContext.Operation; 470var semanticModel = operationContext.Operation.SemanticModel; 475var parameters = operationContext.Operation switch 535var operation = operationContext.Operation; 547var targetMethod = ((IInvocationOperation)operationContext.Operation).TargetMethod; 572var nameofArgument = ((INameOfOperation)operationContext.Operation).Argument; 590var constructor = ((IObjectCreationOperation)operationContext.Operation).Constructor;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationDiagnosticAnalyzer.cs (1)
59var interpolation = (IInterpolationOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyLinqExpression\AbstractSimplifyLinqExpressionDiagnosticAnalyzer.cs (2)
128if (context.Operation.Syntax.GetDiagnostics().Any(diagnostic => diagnostic.Severity == DiagnosticSeverity.Error)) 133if (context.Operation is not IInvocationOperation invocation)
src\roslyn\src\Analyzers\Core\Analyzers\UseConditionalExpression\AbstractUseConditionalExpressionDiagnosticAnalyzer.cs (1)
40var ifOperation = (IConditionalOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\UseExplicitTupleName\UseExplicitTupleNameDiagnosticAnalyzer.cs (1)
47var fieldReferenceOperation = (IFieldReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\UseThrowExpression\AbstractUseThrowExpressionDiagnosticAnalyzer.cs (2)
73var throwOperation = (IThrowOperation)context.Operation; 79var semanticModel = context.Operation.SemanticModel;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
Microsoft.CodeAnalysis.CSharp.Analyzers (1)
MetaAnalyzers\CSharpSemanticModelGetDeclaredSymbolAlwaysReturnsNullAnalyzer.cs (1)
80var invocation = (IInvocationOperation)context.Operation;
Microsoft.CodeAnalysis.CSharp.CodeStyle (16)
src\roslyn\src\Analyzers\CSharp\Analyzers\CodeStyle\CSharpAnalyzerOptionsProvider.cs (1)
116=> GetCSharpAnalyzerOptions(context.Options, context.Operation.Syntax.SyntaxTree);
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertTypeofToNameof\CSharpConvertTypeOfToNameOfDiagnosticAnalyzer.cs (1)
23var node = context.Operation.Syntax;
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
101var operationAssigmnent = (IAssignmentOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseIndexOperatorDiagnosticAnalyzer.cs (3)
101var invocationOperation = (IInvocationOperation)context.Operation; 119var propertyReference = (IPropertyReferenceOperation)context.Operation; 141var arrayElementReference = (IArrayElementReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseRangeOperatorDiagnosticAnalyzer.cs (1)
77var operation = context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseNullCheckOverTypeCheckDiagnosticAnalyzer.cs (4)
60context.Operation.Syntax is not UnaryPatternSyntax) 65var negatedPattern = (INegatedPatternOperation)context.Operation; 80Descriptor, context.Operation.Syntax.GetLocation(), notificationOption, context.Options, additionalLocations: null, properties: null)); 86var operation = context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
545var operation = (IMemberReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (2)
157var fieldInitializer = (IFieldInitializerOperation)context.Operation; 169var fieldReferenceOperation = (IFieldReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseUtf8StringLiteral\UseUtf8StringLiteralDiagnosticAnalyzer.cs (2)
61var arrayCreationOperation = (IArrayCreationOperation)context.Operation; 85var semanticModel = context.Operation.SemanticModel;
Microsoft.CodeAnalysis.CSharp.Features (16)
src\roslyn\src\Analyzers\CSharp\Analyzers\CodeStyle\CSharpAnalyzerOptionsProvider.cs (1)
116=> GetCSharpAnalyzerOptions(context.Options, context.Operation.Syntax.SyntaxTree);
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertTypeofToNameof\CSharpConvertTypeOfToNameOfDiagnosticAnalyzer.cs (1)
23var node = context.Operation.Syntax;
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
101var operationAssigmnent = (IAssignmentOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseIndexOperatorDiagnosticAnalyzer.cs (3)
101var invocationOperation = (IInvocationOperation)context.Operation; 119var propertyReference = (IPropertyReferenceOperation)context.Operation; 141var arrayElementReference = (IArrayElementReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIndexOrRangeOperator\CSharpUseRangeOperatorDiagnosticAnalyzer.cs (1)
77var operation = context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseNullCheckOverTypeCheckDiagnosticAnalyzer.cs (4)
60context.Operation.Syntax is not UnaryPatternSyntax) 65var negatedPattern = (INegatedPatternOperation)context.Operation; 80Descriptor, context.Operation.Syntax.GetLocation(), notificationOption, context.Options, additionalLocations: null, properties: null)); 86var operation = context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
545var operation = (IMemberReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (2)
157var fieldInitializer = (IFieldInitializerOperation)context.Operation; 169var fieldReferenceOperation = (IFieldReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseUtf8StringLiteral\UseUtf8StringLiteralDiagnosticAnalyzer.cs (2)
61var arrayCreationOperation = (IArrayCreationOperation)context.Operation; 85var semanticModel = context.Operation.SemanticModel;
Microsoft.CodeAnalysis.Features (35)
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.BlockAnalyzer.cs (4)
169var expressionStatement = (IExpressionStatementOperation)context.Operation; 245_hasDelegateEscape = !IsHandledDelegateCreationOrAnonymousFunctionTreeShape(operationAnalysisContext.Operation); 251if (operationAnalysisContext.Operation is IParameterReferenceOperation parameterReference) 258_hasDelegateEscape = !IsHandledLocalOrParameterReferenceTreeShape(operationAnalysisContext.Operation);
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (1)
105var methodBinding = (IMethodReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\AnalyzerOptionsProvider.cs (1)
100=> GetAnalyzerOptions(context.Options, context.Operation.Syntax.SyntaxTree);
src\roslyn\src\Analyzers\Core\Analyzers\ConvertTypeofToNameof\AbstractConvertTypeOfToNameOfDiagnosticAnalyzer.cs (2)
31if (!IsValidTypeofAction(context) || !IsValidOperation(context.Operation)) 34var node = context.Operation.Syntax;
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (1)
97var fieldReference = (IFieldReferenceOperation)operationContext.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\AbstractPopulateSwitchDiagnosticAnalyzer.cs (1)
50var switchOperation = (TSwitchOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\QualifyMemberAccess\AbstractQualifyMemberAccessDiagnosticAnalyzer.cs (3)
61switch (context.Operation) 70throw ExceptionUtilities.UnexpectedValue(context.Operation); 85if (context.Operation.Parent?.Kind == OperationKind.PropertySubpattern)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveRedundantEquality\AbstractRemoveRedundantEqualityDiagnosticAnalyzer.cs (4)
34var syntax = context.Operation.Syntax; 38var operation = (IIsPatternOperation)context.Operation; 56var syntax = context.Operation.Syntax; 61var operation = (IBinaryOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (11)
258var operation = context.Operation; 363var operation = operationContext.Operation; 377var initializer = (IFieldInitializerOperation)operationContext.Operation; 397var memberReference = (IMemberReferenceOperation)operationContext.Operation; 454var parameterInitializer = (IParameterInitializerOperation)operationContext.Operation; 470var semanticModel = operationContext.Operation.SemanticModel; 475var parameters = operationContext.Operation switch 535var operation = operationContext.Operation; 547var targetMethod = ((IInvocationOperation)operationContext.Operation).TargetMethod; 572var nameofArgument = ((INameOfOperation)operationContext.Operation).Argument; 590var constructor = ((IObjectCreationOperation)operationContext.Operation).Constructor;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyInterpolation\AbstractSimplifyInterpolationDiagnosticAnalyzer.cs (1)
59var interpolation = (IInterpolationOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\SimplifyLinqExpression\AbstractSimplifyLinqExpressionDiagnosticAnalyzer.cs (2)
128if (context.Operation.Syntax.GetDiagnostics().Any(diagnostic => diagnostic.Severity == DiagnosticSeverity.Error)) 133if (context.Operation is not IInvocationOperation invocation)
src\roslyn\src\Analyzers\Core\Analyzers\UseConditionalExpression\AbstractUseConditionalExpressionDiagnosticAnalyzer.cs (1)
40var ifOperation = (IConditionalOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\UseExplicitTupleName\UseExplicitTupleNameDiagnosticAnalyzer.cs (1)
47var fieldReferenceOperation = (IFieldReferenceOperation)context.Operation;
src\roslyn\src\Analyzers\Core\Analyzers\UseThrowExpression\AbstractUseThrowExpressionDiagnosticAnalyzer.cs (2)
73var throwOperation = (IThrowOperation)context.Operation; 79var semanticModel = context.Operation.SemanticModel;
Microsoft.CodeAnalysis.NetAnalyzers (266)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DoNotDirectlyAwaitATask.cs (4)
97if (context.Operation is IForEachLoopOperation { IsAsynchronous: true, Collection.Type: not null } forEachOperation) 111var awaitExpression = (IAwaitOperation)context.Operation; 123var usingExpression = (IUsingOperation)context.Operation; 152var usingExpression = (IUsingDeclarationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DoNotRaiseExceptionsInUnexpectedLocations.cs (2)
99var throwOperation = (IThrowOperation)operationContext.Operation; 114operationContext.Operation.Syntax.CreateDiagnostic(methodCategory.Rule, methodSymbol.Name, thrownExceptionType.Name));
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumShouldNotHaveDuplicatedValues.cs (1)
96var initializer = (IFieldInitializerOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\PassSystemUriObjectsInsteadOfStrings.cs (3)
80var invocation = (IInvocationOperation)context.Operation; 98var node = _expressionGetter(context.Operation.Syntax); 120var overloads = context.Operation.SemanticModel!.GetMemberGroup(node, context.CancellationToken).OfType<IMethodSymbol>();
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\TypesThatOwnDisposableFieldsShouldBeDisposable.cs (2)
83if (ctx.Operation is IAssignmentOperation { Target: IFieldReferenceOperation field } assignment 90else if (ctx.Operation is IFieldInitializerOperation initializer && initializer.Value.WalkDownConversion().Kind == OperationKind.ObjectCreation)
Microsoft.CodeQuality.Analyzers\Maintainability\AvoidLengthCalculationWhenSlicingToEnd.cs (1)
58var invocation = (IInvocationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\Maintainability\AvoidUninstantiatedInternalClasses.cs (3)
83if (context.Operation.Type is INamedTypeSymbol namedType && namedType.ContainingAssembly.Equals(context.ContainingSymbol.ContainingAssembly)) 135var expr = (IObjectCreationOperation)context.Operation; 149var expr = (IInvocationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\Maintainability\AvoidUnusedPrivateFields.cs (1)
106IFieldSymbol field = ((IFieldReferenceOperation)operationContext.Operation).Field;
Microsoft.CodeQuality.Analyzers\Maintainability\DoNotIgnoreMethodResults.cs (4)
163IOperation expression = ((IExpressionStatementOperation)opContext.Operation).Operation; 271if (operationContext.Operation.Parent is not IBlockOperation enclosingBlock) 278var hasTopmostBlockParent = enclosingBlock == operationContext.Operation.GetTopmostParentBlock(); 289if (statement == operationContext.Operation)
Microsoft.CodeQuality.Analyzers\Maintainability\UseCrossPlatformIntrinsicsAnalyzer.cs (1)
360if (context.Operation is not IInvocationOperation invocation)
Microsoft.CodeQuality.Analyzers\Maintainability\UseNameofInPlaceOfString.cs (3)
50if (!IsApplicableToLanguageVersion(context.Operation.Syntax.SyntaxTree.Options)) 55var argument = (IArgumentOperation)context.Operation; 107var parentOperation = context.Operation.Parent;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\AssigningSymbolAndItsMemberInSameStatement.cs (1)
48var assignmentOperation = (ISimpleAssignmentOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\AvoidDuplicateElementInitialization.cs (1)
48var objectInitializer = (IObjectCreationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\AvoidInfiniteRecursion.cs (1)
58var assignmentOperation = (IAssignmentOperation)operationContext.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\AvoidMultipleEnumerations\AvoidMultipleEnumerations.cs (1)
255var operation = context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\AvoidPropertySelfAssignment.cs (1)
42var assignmentOperation = (IAssignmentOperation)operationContext.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\DoNotCallOverridableMethodsInConstructors.cs (1)
66var operation = (IInvocationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\DoNotInitializeUnnecessarily.cs (2)
46var init = (IFieldInitializerOperation)context.Operation; 70var init = (IPropertyInitializerOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\DoNotPassDisposablesIntoUnawaitedTasks.cs (1)
51var invocation = (IInvocationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\MarkMembersAsStatic.cs (5)
86var methodReference = (IMethodReferenceOperation)context.Operation; 107var operation = (IInstanceReferenceOperation)context.Operation; 109&& (context.Operation.Parent is not IInvocationOperation invocation || !invocation.TargetMethod.Equals(methodSymbol, SymbolEqualityComparer.Default))) 118if (!context.Operation.IsOperationNoneRoot()) 126var operation = (IParameterReferenceOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\PreferJaggedArraysOverMultidimensional.cs (1)
121var arrayCreationExpression = (IArrayCreationOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\RethrowToPreserveStackDetails.cs (1)
42var throwOperation = (IThrowOperation)context.Operation;
Microsoft.CodeQuality.Analyzers\QualityGuidelines\UseLiteralsWhereAppropriate.cs (1)
65var fieldInitializer = context.Operation as IFieldInitializerOperation;
Microsoft.NetCore.Analyzers\Data\ReviewSqlQueriesForSecurityVulnerabilities.cs (3)
76var creation = (IObjectCreationOperation)operationContext.Operation; 83var invocation = (IInvocationOperation)operationContext.Operation; 103var propertyReference = (IPropertyReferenceOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\ImmutableCollections\DoNotCallToImmutableCollectionOnAnImmutableCollectionValue.cs (1)
70var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DelegateInteropUsageAnalyzer.cs (2)
56IInvocationOperation operation = (IInvocationOperation)context.Operation; 108var functionPointerInvocation = (ILocalFunctionOperation)context.Operation;
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DisabledRuntimeMarshallingAssemblyAnalyzer.cs (3)
76IInvocationOperation invocation = (IInvocationOperation)context.Operation; 102var functionPointerInvocation = IFunctionPointerInvocationOperationWrapper.FromOperation(context.Operation); 114var functionPointerInvocation = (ILocalFunctionOperation)context.Operation;
Microsoft.NetCore.Analyzers\InteropServices\PlatformCompatibilityAnalyzer.cs (1)
330AnalyzeOperation(context.Operation, context, platformSpecificOperations, platformSpecificMembers,
Microsoft.NetCore.Analyzers\InteropServices\UseValidPlatformString.cs (1)
95context.RegisterOperationAction(context => AnalyzeOperation(context.Operation, context, knownPlatforms), OperationKind.Invocation);
Microsoft.NetCore.Analyzers\Performance\AvoidPotentiallyExpensiveCallWhenLogging.cs (1)
73var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\AvoidSingleUseOfLocalJsonSerializerOptions.cs (1)
59var operation = (IObjectCreationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\CollapseMultiplePathOperations.cs (1)
87var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Performance\ConstantExpectedAnalyzer.cs (1)
178var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\DoNotGuardCall.cs (1)
104var conditional = (IConditionalOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\DoNotUseAsParallelInForEachLoop.cs (1)
71if (context.Operation is not IForEachLoopOperation forEachLoop)
Microsoft.NetCore.Analyzers\Performance\PreferConvertToHexStringOverBitConverter.cs (1)
64var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\PreferDictionaryTryMethodsOverContainsKeyGuardAnalyzer.cs (1)
138var containsOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\PreferHashDataOverComputeHash.cs (3)
117var localReferenceOperation = (ILocalReferenceOperation)context.Operation; 126var invocationOperation = (IInvocationOperation)context.Operation; 143var objectCreationOperation = (IObjectCreationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\PreferLengthCountIsEmptyOverAnyAnalyzer.cs (1)
95var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\PreferReadOnlySpanOverSpan.cs (2)
90IParameterSymbol parameter = ((IParameterReferenceOperation)operationContext.Operation).Parameter; 94if (!IsUsageSafe(operationContext.Operation, parameter, candidateParameters, span, memory, readOnlySpan, readOnlyMemory, memoryExtensions, methodSymbol))
Microsoft.NetCore.Analyzers\Performance\RecommendCaseInsensitiveStringComparison.Analyzer.cs (2)
224IInvocationOperation invocation = (IInvocationOperation)context.Operation; 233IBinaryOperation binaryOperation = (IBinaryOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseAsSpanInsteadOfRangeIndexer.cs (7)
100if (operationContext.Operation is IPropertyReferenceOperation propertyReference) 110else if (operationContext.Operation is IArrayElementReferenceOperation elementReference) 120else if (operationContext.Operation.Kind is OperationKind.None or OperationKindEx.ImplicitIndexerReference) 129if (operationContext.Operation.Syntax.RawKind != 8635) 134IEnumerator<IOperation> enumerator = operationContext.Operation.Children.GetEnumerator(); 166if (operationContext.Operation.Parent is not IConversionOperation conversionOperation) 203operationContext.Operation.CreateDiagnostic(
Microsoft.NetCore.Analyzers\Performance\UseCompositeFormat.cs (1)
94IInvocationOperation invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Performance\UseConcreteTypeAnalyzer.cs (10)
141context.RegisterOperationAction(context => coll.HandleInvocation((IInvocationOperation)context.Operation), OperationKind.Invocation); 142context.RegisterOperationAction(context => coll.HandleSimpleAssignment((ISimpleAssignmentOperation)context.Operation), OperationKind.SimpleAssignment); 143context.RegisterOperationAction(context => coll.HandleCoalesceAssignment((ICoalesceAssignmentOperation)context.Operation), OperationKind.CoalesceAssignment); 144context.RegisterOperationAction(context => coll.HandleDeconstructionAssignment((IDeconstructionAssignmentOperation)context.Operation), OperationKind.DeconstructionAssignment); 145context.RegisterOperationAction(context => coll.HandleFieldInitializer((IFieldInitializerOperation)context.Operation), OperationKind.FieldInitializer); 146context.RegisterOperationAction(context => coll.HandlePropertyInitializer((IPropertyInitializerOperation)context.Operation), OperationKind.PropertyInitializer); 147context.RegisterOperationAction(context => coll.HandlePropertyReference((IPropertyReferenceOperation)context.Operation), OperationKind.PropertyReference); 148context.RegisterOperationAction(context => coll.HandleVariableDeclarator((IVariableDeclaratorOperation)context.Operation), OperationKind.VariableDeclarator); 149context.RegisterOperationAction(context => coll.HandleDeclarationExpression((IDeclarationExpressionOperation)context.Operation), OperationKind.DeclarationExpression); 150context.RegisterOperationAction(context => coll.HandleReturn((IReturnOperation)context.Operation), OperationKind.Return);
Microsoft.NetCore.Analyzers\Performance\UseCountProperly.cs (2)
190var invocationOperation = (IInvocationOperation)context.Operation; 238var propertyReferenceOperation = (IPropertyReferenceOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseSearchValues.cs (1)
67var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseSpanClearInsteadOfFill.cs (1)
66var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseStartsWithInsteadOfIndexOfComparisonWithZero.cs (1)
98var binaryOperation = (IBinaryOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseStringContainsCharOverloadWithSingleCharactersAnalyzer.cs (1)
68var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Performance\UseStringMethodCharOverloadWithSingleCharacters.cs (1)
117var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\AvoidConstArrays.cs (2)
58if (context.Operation is IArrayCreationOperation arrayCreationOperation) // For arrays passed as arguments 72else if (context.Operation is IInvocationOperation invocationOperation) // For arrays passed in extension methods, like in LINQ
Microsoft.NetCore.Analyzers\Runtime\AvoidRedundantRegexIsMatchBeforeMatch.cs (1)
56var conditional = (IConditionalOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\AvoidUnreliableStreamRead.cs (1)
58var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\AvoidZeroLengthArrayAllocations.cs (1)
76IArrayCreationOperation arrayCreationExpression = (IArrayCreationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\BufferBlockCopyLengthAnalyzer.cs (1)
75var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\CallGCSuppressFinalizeCorrectly.cs (1)
137var invocationExpression = (IInvocationOperation)analysisContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\DetectPreviewFeatureAnalyzer.cs (2)
706IOperation operation = context.Operation; 747IOperation operation = context.Operation;
Microsoft.NetCore.Analyzers\Runtime\DisposableFieldsShouldBeDisposed.cs (2)
126var initializedFields = ((IFieldInitializerOperation)operationContext.Operation).InitializedFields; 152var fieldReference = (IFieldReferenceOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\DisposableTypesShouldDeclareFinalizer.cs (1)
60var assignment = (IAssignmentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\DisposeMethodsShouldCallBaseClassDispose.cs (1)
86var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\DoNotCallEnumerableCastOrOfTypeWithIncompatibleTypesAnalyzer.cs (1)
90var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\DoNotLockOnObjectsWithWeakIdentity.cs (2)
53context => ReportOnWeakIdentityObject(((ILockOperation)context.Operation).LockedValue, context), 58var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\DoNotPassLiteralsAsLocalizedParameters.cs (3)
70var argument = (IArgumentOperation)operationContext.Operation; 94var propertyReference = (IPropertyReferenceOperation)operationContext.Operation; 114operationContext.Operation.Syntax.SyntaxTree, operationContext.Compilation, defaultValue: false);
Microsoft.NetCore.Analyzers\Runtime\DoNotRaiseReservedExceptionTypes.cs (1)
128var objectCreation = (IObjectCreationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\DoNotUseEndOfStreamInAsyncMethods.cs (1)
66var operation = (IPropertyReferenceOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\DoNotUseEnumerableMethodsOnIndexableCollectionsInsteadUseTheCollectionDirectly.cs (2)
58var invocation = (IInvocationOperation)context.Operation; 149EditorConfigOptionNames.ExcludeOrDefaultMethods, Rule, context.Operation.Syntax.SyntaxTree,
Microsoft.NetCore.Analyzers\Runtime\DoNotUseReferenceEqualsWithValueTypes.cs (1)
87var invocationExpression = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\ForwardCancellationTokenToInvocations.Analyzer.cs (3)
85IInvocationOperation invocation = (IInvocationOperation)context.Operation; 108SyntaxNode? nodeToDiagnose = GetInvocationMethodNameNode(context.Operation.Syntax) ?? context.Operation.Syntax;
Microsoft.NetCore.Analyzers\Runtime\InitializeStaticFieldsInline.cs (1)
68var assignment = (IAssignmentOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\InstantiateArgumentExceptionsCorrectly.cs (4)
91var creation = (IObjectCreationOperation)context.Operation; 102context.ReportDiagnostic(context.Operation.Syntax.CreateDiagnostic(RuleNoArguments, creation.Type.Name)); 158return context.Operation.CreateDiagnostic(RuleIncorrectMessage, dictBuilder.ToImmutable(), targetSymbol.Name, stringArgument, parameter.Name, creation.Type!.Name); 166return context.Operation.CreateDiagnostic(RuleIncorrectParameterName, targetSymbol.Name, stringArgument, parameter.Name, creation.Type!.Name);
Microsoft.NetCore.Analyzers\Runtime\LoggerMessageDefineAnalyzer.cs (1)
123var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\NormalizeStringsToUppercase.cs (1)
73var invocation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferAsSpanOverSubstring.cs (1)
62var argument = (IArgumentOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferConstCharOverConstUnitStringAnalyzer.cs (1)
62var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferDictionaryContainsMethods.cs (1)
105var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferJsonElementParse.cs (1)
77var propertyReference = (IPropertyReferenceOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferStreamAsyncMemoryOverloads.cs (1)
204IAwaitOperation awaitOperation = (IAwaitOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferStringContainsOverIndexOfAnalyzer.cs (2)
124ILocalReferenceOperation localReference = (ILocalReferenceOperation)context.Operation; 146var invocationOperation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreferTypedStringBuilderAppendOverloads.cs (1)
93var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\PreventNumericIntPtrUIntPtrBehavioralChanges.cs (2)
79if (context.Operation is IBinaryOperation binaryOperation && 91else if (context.Operation is IConversionOperation conversionOperation)
Microsoft.NetCore.Analyzers\Runtime\ProvideCorrectArgumentsToFormattingMethods.cs (6)
62var invocation = (IInvocationOperation)operationContext.Operation; 84operationContext.ReportDiagnostic(operationContext.Operation.Syntax.CreateDiagnostic(InvalidFormatRule)); 100operationContext.ReportDiagnostic(operationContext.Operation.Syntax.CreateDiagnostic(ArgumentCountRule)); 139operationContext.ReportDiagnostic(operationContext.Operation.Syntax.CreateDiagnostic(ArgumentCountRule)); 380var additionalStringFormatMethodsOption = context.Options.GetAdditionalStringFormattingMethodsOption(ArgumentCountRule, context.Operation.Syntax.SyntaxTree, context.Compilation); 390ArgumentCountRule, context.Operation.Syntax.SyntaxTree, context.Compilation, defaultValue: false);
Microsoft.NetCore.Analyzers\Runtime\SpecifyCultureForToLowerAndToUpper.cs (1)
48var operation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\SpecifyCultureInfo.cs (1)
47var invocationExpression = (IInvocationOperation)oaContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\SpecifyIFormatProvider.cs (1)
179var invocationExpression = (IInvocationOperation)oaContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\SpecifyStringComparison.cs (1)
69var invocationExpression = (IInvocationOperation)oaContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\TestForEmptyStringsUsingStringLength.cs (2)
56(IInvocationOperation)operationAnalysisContext.Operation, linqExpressionType, 63(IBinaryOperation)operationAnalysisContext.Operation, linqExpressionType,
Microsoft.NetCore.Analyzers\Runtime\TestForNaNCorrectly.cs (1)
54var binaryOperatorExpression = (IBinaryOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseAsyncMethodInAsyncContext.cs (7)
108if (context.Operation is IInvocationOperation invocationOperation) 120var semanticModel = context.Operation.SemanticModel!; 126context.Operation.Syntax.GetLocation().SourceSpan.Start, 159var propertyReferenceOperation = (IPropertyReferenceOperation)context.Operation; 300var containingAnonymousFunction = context.Operation.TryGetContainingAnonymousFunctionOrLocalFunction(); 342Diagnostic diagnostic = context.Operation.Syntax.CreateDiagnostic( 344symbol.Value.ToDisplayString(GetLanguageSpecificFormat(context.Operation))
Microsoft.NetCore.Analyzers\Runtime\UseCancellationTokenThrowIfCancellationRequested.cs (1)
54var conditional = (IConditionalOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseEnvironmentMembers.cs (1)
98var initialPropRef = (IPropertyReferenceOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseExceptionThrowHelpers.cs (1)
150var throwOperation = (IThrowOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseOrdinalStringComparison.cs (1)
52var operation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseRegexMembers.cs (1)
85var initialPropRef = (IPropertyReferenceOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseSpanBasedStringConcat.cs (1)
66var binary = (IBinaryOperation)context.Operation;
Microsoft.NetCore.Analyzers\Runtime\UseStringEqualsOverStringCompare.cs (2)
65if (selector(context.Operation, symbols)) 67context.ReportDiagnostic(context.Operation.CreateDiagnostic(Rule));
Microsoft.NetCore.Analyzers\Runtime\UseThreadStaticCorrectly.cs (1)
89var fieldInit = (IFieldInitializerOperation)context.Operation;
Microsoft.NetCore.Analyzers\Security\ApprovedCipherModeAnalyzer.cs (1)
64(IFieldReferenceOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DataSetDataTableInIFormatterSerializableObjectGraphAnalyzer.cs (1)
91(IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DataSetDataTableInSerializableObjectGraphAnalyzer.cs (2)
105(IInvocationOperation)operationAnalysisContext.Operation; 125(IObjectCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotAddSchemaByURL.cs (1)
53var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotAlwaysSkipTokenValidationInDelegates.cs (1)
70var delegateCreationOperation = (IDelegateCreationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotCallDangerousMethodsInDeserialization.cs (1)
149switch (operationContext.Operation)
Microsoft.NetCore.Analyzers\Security\DoNotDisableCertificateValidation.cs (1)
66(IDelegateCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotDisableHttpClientCRLCheck.cs (1)
165(IObjectCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotDisableHttpHeaderChecking.cs (1)
54var simpleAssignmentOperation = (ISimpleAssignmentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotDisableTokenValidationChecks.cs (1)
63var simpleAssignmentOperation = (ISimpleAssignmentOperation)context.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotInstallRootCert.cs (2)
141var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation; 157var argumentOperation = (IArgumentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotSetSwitch.cs (1)
96var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseAccountSAS.cs (1)
53var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseCreateEncryptorWithNonDefaultIV.cs (1)
123var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseDeprecatedSecurityProtocols.cs (2)
79var fieldReferenceOperation = (IFieldReferenceOperation)operationAnalysisContext.Operation; 112var assignmentOperation = (IAssignmentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseDSA.cs (3)
73var objectCreationOperation = (IObjectCreationOperation)operationAnalysisContext.Operation; 94var returnOperation = (IReturnOperation)operationAnalysisContext.Operation; 115var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureCryptographicAlgorithms.cs (3)
72switch (operationAnalysisContext.Operation) 83Debug.Fail($"Unhandled IOperation {operationAnalysisContext.Operation.Kind}"); 153operationAnalysisContext.Operation.Syntax.GetLocation(),
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureDeserializerJavascriptSerializerWithSimpleTypeResolver.cs (3)
176(IInvocationOperation)operationAnalysisContext.Operation; 194(IMethodReferenceOperation)operationAnalysisContext.Operation; 200rootOperationsNeedingAnalysis.Add((operationAnalysisContext.Operation.GetRoot(), operationAnalysisContext.ContainingSymbol));
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureDeserializerJsonNetWithoutBinder.cs (2)
156(IInvocationOperation)operationAnalysisContext.Operation; 174(IObjectCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureDeserializerMethodsBase.cs (2)
88(IInvocationOperation)operationAnalysisContext.Operation; 110(IMethodReferenceOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureDeserializerWithoutBinderBase.cs (6)
126(IObjectCreationOperation)operationAnalysisContext.Operation; 131rootOperationsNeedingAnalysis.Add((operationAnalysisContext.Operation.GetRoot(), operationAnalysisContext.ContainingSymbol)); 141(IInvocationOperation)operationAnalysisContext.Operation; 147rootOperationsNeedingAnalysis.Add((operationAnalysisContext.Operation.GetRoot(), operationAnalysisContext.ContainingSymbol)); 157(IMethodReferenceOperation)operationAnalysisContext.Operation; 164rootOperationsNeedingAnalysis.Add((operationAnalysisContext.Operation.GetRoot(), operationAnalysisContext.ContainingSymbol));
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureRandomness.cs (1)
51var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseInsecureSettingsForJsonNet.cs (3)
165(IInvocationOperation)operationAnalysisContext.Operation; 189(IObjectCreationOperation)operationAnalysisContext.Operation; 204IReturnOperation returnOperation = (IReturnOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseObsoleteKDFAlgorithm.cs (1)
60var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseWeakKDFAlgorithm.cs (1)
62var objectCreationOperation = (IObjectCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseWeakKDFInsufficientIterationCount.cs (2)
138var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation; 154var argumentOperation = (IArgumentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\DoNotUseXslTransform.cs (1)
53var objectCreationOperation = (IObjectCreationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\JsonNetTypeNameHandling.cs (2)
58(IFieldReferenceOperation)operationAnalysisContext.Operation; 70IAssignmentOperation assignmentOperation = (IAssignmentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\SetHttpOnlyForHttpCookie.cs (3)
97(ISimpleAssignmentOperation)operationAnalysisContext.Operation; 115IReturnOperation returnOperation = (IReturnOperation)operationAnalysisContext.Operation; 131IArgumentOperation argumentOperation = (IArgumentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\SourceTriggeredTaintedDataAnalyzerBase.cs (5)
138IPropertyReferenceOperation propertyReferenceOperation = (IPropertyReferenceOperation)operationAnalysisContext.Operation; 154IParameterReferenceOperation parameterReferenceOperation = (IParameterReferenceOperation)operationAnalysisContext.Operation; 169IInvocationOperation invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation; 190IArrayInitializerOperation arrayInitializerOperation = (IArrayInitializerOperation)operationAnalysisContext.Operation; 196rootOperationsNeedingAnalysis.Add(operationAnalysisContext.Operation.GetRoot());
Microsoft.NetCore.Analyzers\Security\SslProtocolsAnalyzer.cs (3)
76IFieldReferenceOperation fieldReferenceOperation = (IFieldReferenceOperation)operationAnalysisContext.Operation; 104switch (operationAnalysisContext.Operation) 146Debug.Fail("Unhandled IOperation " + operationAnalysisContext.Operation.Kind);
Microsoft.NetCore.Analyzers\Security\UseAutoValidateAntiforgeryToken.cs (2)
139switch (operationContext.Operation) 177var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\UseContainerLevelAccessPolicy.cs (2)
106var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation; 137operationAnalysisContext.Operation,
Microsoft.NetCore.Analyzers\Security\UseRSAWithSufficientKeySize.cs (2)
75var objectCreationOperation = (IObjectCreationOperation)operationAnalysisContext.Operation; 104var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\UseSecureCookiesASPNetCore.cs (2)
125var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation; 152var argumentOperation = (IArgumentOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\UseSharedAccessProtocolHttpsOnly.cs (1)
93var invocationOperation = (IInvocationOperation)operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Security\UseXmlReaderBase.cs (1)
58var operation = operationAnalysisContext.Operation;
Microsoft.NetCore.Analyzers\Tasks\DoNotConfigureAwaitWithSuppressThrowing.cs (1)
59IInvocationOperation invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Tasks\DoNotCreateTaskCompletionSourceWithWrongArguments.cs (3)
50switch (operationContext.Operation.Kind) 54var objectCreation = (IObjectCreationOperation)operationContext.Operation; 60var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Tasks\DoNotCreateTasksWithoutPassingATaskScheduler.cs (1)
54var invocation = (IInvocationOperation)operationContext.Operation;
Microsoft.NetCore.Analyzers\Tasks\DoNotUseNonCancelableTaskDelayWithWhenAny.cs (1)
52var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Tasks\DoNotUseWhenAllOrWaitAllWithSingleArgument.cs (1)
62var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Tasks\UseValueTasksCorrectly.cs (1)
96var operation = operationContext.Operation;
Microsoft.NetCore.Analyzers\Usage\DoNotCompareSpanToNull.cs (1)
60var binaryOperation = (IBinaryOperation)context.Operation;
Microsoft.NetCore.Analyzers\Usage\DoNotPassNonNullableValueToArgumentNullExceptionThrowIfNull.cs (1)
63var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Usage\PreferGenericOverloads.cs (1)
46if (!RuntimeTypeInvocationContext.TryGetContext((IInvocationOperation)context.Operation, out var invocationContext))
Microsoft.NetCore.Analyzers\Usage\ProvideCorrectArgumentToEnumHasFlag.cs (1)
46var invocation = (IInvocationOperation)context.Operation;
Microsoft.NetCore.Analyzers\Usage\ProvideHttpClientHandlerMaxResponseHeaderLengthValueCorrectly.cs (2)
67var assignmentOperation = (ISimpleAssignmentOperation)context.Operation; 82context.ReportDiagnostic(context.Operation.CreateDiagnostic(EnsureMaxResponseHeaderLengthRule, propertyValue));
Microsoft.NetFramework.Analyzers\DoNotUseInsecureDtdProcessing.cs (8)
224switch (context.Operation.Kind) 233var fieldInitializer = (IFieldInitializerOperation)context.Operation; 241var declarator = (IVariableDeclaratorOperation)context.Operation; 245var invocation = (IInvocationOperation)context.Operation; 566context.ReportDiagnostic(context.Operation.Syntax.CreateDiagnostic(RuleXmlDocumentWithNoSecureResolver)); 606else if (context.Operation?.Parent?.Kind != OperationKind.ObjectOrCollectionInitializer) 615var assignment = (IAssignmentOperation)context.Operation; 702AnalyzeObjectCreationInternal(context, null, context.Operation);
Microsoft.NetFramework.Analyzers\DoNotUseInsecureDtdProcessingInApiDesign.cs (4)
126var assignment = (IAssignmentOperation)context.Operation; 182var assignment = (IAssignmentOperation)context.Operation; 223var assignment = (IAssignmentOperation)context.Operation; 311var assignment = (IAssignmentOperation)context.Operation;
Microsoft.NetFramework.Analyzers\DoNotUseInsecureXSLTScriptExecution.cs (4)
64var assignment = (IAssignmentOperation)context.Operation; 70var variableDeclarator = (IVariableDeclaratorOperation)context.Operation; 79var invocation = (IInvocationOperation)context.Operation; 89var objectCreation = (IObjectCreationOperation)context.Operation;
Microsoft.CodeAnalysis.ResxSourceGenerator (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (1)
src\roslyn\src\Analyzers\VisualBasic\Analyzers\ConvertTypeofToNameof\VisualBasicConvertTypeOfToNameOfDiagnosticAnalyzer.vb (1)
22Dim node = context.Operation.Syntax
Microsoft.CodeAnalysis.VisualBasic.Features (1)
src\roslyn\src\Analyzers\VisualBasic\Analyzers\ConvertTypeofToNameof\VisualBasicConvertTypeOfToNameOfDiagnosticAnalyzer.vb (1)
22Dim node = context.Operation.Syntax
Microsoft.CodeAnalysis.Workspaces (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
Microsoft.Interop.ComInterfaceGenerator (3)
Analyzers\ComHostingDoesNotSupportGeneratedComInterfaceAnalyzer.cs (1)
43IAttributeOperation attr = (IAttributeOperation)context.Operation;
Analyzers\RuntimeComApiUsageWithSourceGeneratedComAnalyzer.cs (2)
106var operation = (IInvocationOperation)context.Operation; 141var operation = (IConversionOperation)context.Operation;
Microsoft.Interop.LibraryImportGenerator (2)
Analyzers\CustomMarshallerAttributeAnalyzer.cs (1)
644IAttributeOperation attr = (IAttributeOperation)context.Operation;
Analyzers\NativeMarshallingAttributeAnalyzer.cs (1)
86IAttributeOperation attr = (IAttributeOperation)context.Operation;
Roslyn.Diagnostics.Analyzers (7)
DoNotCallGetTestAccessor.cs (3)
54var memberReference = (IMemberReferenceOperation)context.Operation; 63var invocation = (IInvocationOperation)context.Operation; 78var objectCreation = (IObjectCreationOperation)context.Operation;
ImmutableArrayBoxingAnalyzer.cs (1)
69var invocation = (IInvocationOperation)context.Operation;
PooledArrayBuilderAsRefAnalyzer.cs (1)
59var invocation = (IInvocationOperation)context.Operation;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (1)
198=> context.Operation.Syntax.FindNode(context.FilterSpan, findInTrivia, getInnermostNodeForTie);
TemporaryArrayAsRefAnalyzer.cs (1)
57var invocation = (IInvocationOperation)context.Operation;
Roslyn.Diagnostics.CSharp.Analyzers (5)
CSharpDoNotCapturePrimaryContructorParameters.cs (1)
39var operation = (IParameterReferenceOperation)context.Operation;
CSharpDoNotUseDebugAssertForInterpolatedStrings.cs (1)
65var invocation = (IInvocationOperation)context.Operation;
PreferNullLiteral.cs (3)
45if (context.Operation.IsImplicit) 51var type = context.Operation.Type; 78context.ReportDiagnostic(context.Operation.CreateDiagnostic(Rule));
System.Private.CoreLib.Generators (1)
IntrinsicsInSystemPrivateCoreLibAnalyzer.cs (1)
183AnalyzeOperation(context.Operation, methodSymbol, context, onLoadData);
System.Text.RegularExpressions.Generator (2)
UpgradeToGeneratedRegexAnalyzer.cs (2)
74if (IsFixableRegexOperation(context.Operation, regexTypeSymbol)) 77SyntaxNode? syntaxNodeForDiagnostic = context.Operation.Syntax;