3 instantiations of SymbolAnalysisContext
Microsoft.CodeAnalysis (3)
DiagnosticAnalyzer\AnalyzerExecutor.cs (2)
478var context = new SymbolAnalysisContext( 597var context = new SymbolAnalysisContext(
DiagnosticAnalyzer\DiagnosticStartAnalysisScope.cs (1)
580action(new SymbolAnalysisContext(
274 references to SymbolAnalysisContext
Aspire.Hosting.Integration.Analyzers (4)
AspireExportAnalyzer.cs (4)
118SymbolAnalysisContext context, 229SymbolAnalysisContext context, 264SymbolAnalysisContext context, 699SymbolAnalysisContext context,
GenerateDocumentationAndConfigFiles (9)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
ILLink.RoslynAnalyzer (13)
DynamicallyAccessedMembersAnalyzer.cs (5)
178private static void VerifyMemberOnlyApplyToTypesOrStrings(SymbolAnalysisContext context, ISymbol member) 204private static void VerifyDamOnDerivedAndBaseMethodsMatch(SymbolAnalysisContext context, IMethodSymbol methodSymbol) 213private static void VerifyDamOnMethodsMatch(SymbolAnalysisContext context, IMethodSymbol overrideMethod, IMethodSymbol baseMethod, ISymbol? origin = null) 305private static void VerifyDamOnInterfaceAndImplementationMethodsMatch(SymbolAnalysisContext context, INamedTypeSymbol type) 324private static void VerifyDamOnPropertyAndAccessorMatch(SymbolAnalysisContext context, IMethodSymbol methodSymbol)
RequiresAnalyzerBase.cs (8)
67private protected virtual ImmutableArray<(Action<SymbolAnalysisContext> Action, SymbolKind[] SymbolKind)> ExtraSymbolActions { get; } = ImmutableArray<(Action<SymbolAnalysisContext> Action, SymbolKind[] SymbolKind)>.Empty; 116SymbolAnalysisContext symbolAnalysisContext, 124SymbolAnalysisContext symbolAnalysisContext, 186private void AnalyzeImplicitBaseCtor(SymbolAnalysisContext context) 278private void ReportRequiresOnStaticCtorDiagnostic(SymbolAnalysisContext symbolAnalysisContext, IMethodSymbol ctor) 286private void ReportRequiresOnEntryPointDiagnostic(SymbolAnalysisContext symbolAnalysisContext, IMethodSymbol entryPoint) 294private void ReportMismatchInAttributesDiagnostic(SymbolAnalysisContext symbolAnalysisContext, ISymbol member, ISymbol baseMember, bool isInterface = false, ISymbol? origin = null)
Microsoft.AspNetCore.Analyzers (3)
BuildServiceProviderAnalyzer.cs (1)
19public void AnalyzeSymbol(SymbolAnalysisContext context)
UseAuthorizationAnalyzer.cs (1)
20public void AnalyzeSymbol(SymbolAnalysisContext context)
UseMvcAnalyzer.cs (1)
19public void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.AspNetCore.App.Analyzers (5)
Mvc\DetectAmbiguousActionRoutes.cs (1)
21private static void DetectAmbiguousActionRoutes(SymbolAnalysisContext context, WellKnownTypes wellKnownTypes, RoutePatternTree? controllerRoutePattern, List<ActionRoute> actionRoutes)
Mvc\DetectOverriddenAuthorizeAttribute.cs (3)
26private static void DetectOverriddenAuthorizeAttributeOnController(SymbolAnalysisContext context, WellKnownTypes wellKnownTypes, 56private static void DetectOverriddenAuthorizeAttributeOnAction(SymbolAnalysisContext context, WellKnownTypes wellKnownTypes, 206private static void ReportOverriddenAuthorizeAttributeDiagnosticsIfAny(SymbolAnalysisContext context,
Mvc\MvcAnalyzer.cs (1)
91private static void PopulateActionRoutes(SymbolAnalysisContext context, WellKnownTypes wellKnownTypes, RouteUsageCache routeUsageCache, List<ActionRoute> actionRoutes, IMethodSymbol methodSymbol)
Microsoft.AspNetCore.Components.Analyzers (2)
InternalUsageAnalyzer.cs (2)
75private void AnalyzeSymbol(SymbolAnalysisContext context) 156private void VisitDeclarationSymbol(SymbolAnalysisContext context, ISymbol symbol, ISymbol symbolForDiagnostic)
Microsoft.AspNetCore.Components.SdkAnalyzers (2)
InternalUsageAnalyzer.cs (2)
75private void AnalyzeSymbol(SymbolAnalysisContext context) 156private void VisitDeclarationSymbol(SymbolAnalysisContext context, ISymbol symbol, ISymbol symbolForDiagnostic)
Microsoft.AspNetCore.Mvc.Analyzers (4)
AttributesShouldNotBeAppliedToPageModelAnalyzer.cs (4)
82private static void ReportRouteDiagnosticOnModel(SymbolAnalysisContext context, INamedTypeSymbol typeSymbol, INamedTypeSymbol routeAttribute) 96private static void ReportRouteDiagnostic(SymbolAnalysisContext context, IMethodSymbol method, INamedTypeSymbol routeAttribute) 110private static void ReportFilterDiagnostic(SymbolAnalysisContext context, IMethodSymbol method, INamedTypeSymbol filterAttribute) 137private static Location GetAttributeLocation(SymbolAnalysisContext context, AttributeData attribute)
Microsoft.CodeAnalysis (17)
DiagnosticAnalyzer\AnalyzerExecutor.cs (2)
478var context = new SymbolAnalysisContext( 597var context = new SymbolAnalysisContext(
DiagnosticAnalyzer\DiagnosticAnalysisContext.cs (6)
78public void RegisterSymbolAction(Action<SymbolAnalysisContext> action, params SymbolKind[] symbolKinds) 89public abstract void RegisterSymbolAction(Action<SymbolAnalysisContext> action, params ImmutableArray<SymbolKind> symbolKinds); 376public void RegisterSymbolAction(Action<SymbolAnalysisContext> action, params SymbolKind[] symbolKinds) 387public abstract void RegisterSymbolAction(Action<SymbolAnalysisContext> action, params ImmutableArray<SymbolKind> symbolKinds); 769/// A symbol action can use a <see cref="SymbolAnalysisContext"/> to report <see cref="Diagnostic"/>s about an <see cref="ISymbol"/>. 934public abstract void RegisterSymbolEndAction(Action<SymbolAnalysisContext> action);
DiagnosticAnalyzer\DiagnosticAnalyzerAction.cs (4)
23public Action<SymbolAnalysisContext> Action { get; } 26public SymbolAnalyzerAction(Action<SymbolAnalysisContext> action, ImmutableArray<SymbolKind> kinds, DiagnosticAnalyzer analyzer) 49public Action<SymbolAnalysisContext> Action { get; } 51public SymbolEndAnalyzerAction(Action<SymbolAnalysisContext> action, DiagnosticAnalyzer analyzer)
DiagnosticAnalyzer\DiagnosticStartAnalysisScope.cs (5)
60public override void RegisterSymbolAction(Action<SymbolAnalysisContext> action, ImmutableArray<SymbolKind> symbolKinds) 165public override void RegisterSymbolAction(Action<SymbolAnalysisContext> action, ImmutableArray<SymbolKind> symbolKinds) 246public override void RegisterSymbolEndAction(Action<SymbolAnalysisContext> action) 535public void RegisterSymbolAction(Action<SymbolAnalysisContext> action, ImmutableArray<SymbolKind> symbolKinds) 603public void RegisterSymbolEndAction(Action<SymbolAnalysisContext> action)
Microsoft.CodeAnalysis.Analyzers (25)
FixAnalyzers\FixerWithFixAllAnalyzer.cs (2)
217internal void SymbolEnd(SymbolAnalysisContext context) 275void AnalyzeFixerWithFixAll(INamedTypeSymbol fixer, SymbolAnalysisContext context)
ImplementationIsObsoleteAnalyzer.cs (1)
41private static void AnalyzeSymbol(SymbolAnalysisContext context)
InternalImplementationOnlyAnalyzer.cs (1)
44private static void AnalyzeSymbol(SymbolAnalysisContext context)
MetaAnalyzers\DiagnosticAnalyzerAttributeAnalyzer.cs (1)
74protected override void AnalyzeDiagnosticAnalyzer(SymbolAnalysisContext symbolContext)
MetaAnalyzers\DiagnosticAnalyzerCorrectnessAnalyzer.DiagnosticAnalyzerSymbolAnalyzer.cs (2)
30internal void AnalyzeSymbol(SymbolAnalysisContext symbolContext) 39protected abstract void AnalyzeDiagnosticAnalyzer(SymbolAnalysisContext symbolContext);
MetaAnalyzers\DiagnosticAnalyzerCorrectnessAnalyzer.SyntaxNodeWithinAnalyzerTypeCompilationAnalyzer.cs (2)
39protected override void AnalyzeDiagnosticAnalyzer(SymbolAnalysisContext symbolContext) 60protected abstract void AnalyzeNode(SymbolAnalysisContext symbolContext, TSyntaxNodeOfInterest syntaxNode, SemanticModel semanticModel);
MetaAnalyzers\DiagnosticAnalyzerFieldsAnalyzer.cs (3)
109protected override void AnalyzeDiagnosticAnalyzer(SymbolAnalysisContext symbolContext) 121protected override void AnalyzeNode(SymbolAnalysisContext symbolContext, TFieldDeclarationSyntax syntaxNode, SemanticModel semanticModel) 165private static void ReportDiagnostic(ITypeSymbol type, TTypeSyntax typeSyntax, SymbolAnalysisContext context)
MetaAnalyzers\DoNotUseFileTypesForAnalyzersOrGenerators.cs (1)
50private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol diagnosticAnalyzer, INamedTypeSymbol? codeFixProvider, INamedTypeSymbol? isourceGenerator, INamedTypeSymbol? iincrementalGenerator)
MetaAnalyzers\ReportDiagnosticAnalyzer.cs (2)
136protected override void AnalyzeDiagnosticAnalyzer(SymbolAnalysisContext symbolContext) 198protected override void AnalyzeNode(SymbolAnalysisContext symbolContext, TInvocationExpressionSyntax syntaxNode, SemanticModel semanticModel)
MetaAnalyzers\SymbolIsBannedInAnalyzersAnalyzer.cs (1)
71void analyzePossibleAnalyzerOrGenerator(SymbolAnalysisContext symbolAnalysisContext)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
Microsoft.CodeAnalysis.AnalyzerUtilities (9)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
Microsoft.CodeAnalysis.CodeStyle (16)
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (1)
109private void OnSymbolEnd(SymbolAnalysisContext context)
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (2)
86void AnalyzeFieldSymbol(SymbolAnalysisContext symbolContext) 114void OnSymbolEnd(SymbolAnalysisContext symbolEndContext)
src\roslyn\src\Analyzers\Core\Analyzers\NamingStyle\NamingStyleDiagnosticAnalyzerBase.cs (1)
56void SymbolAction(SymbolAnalysisContext symbolContext)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (2)
307private void AnalyzeSymbolDeclaration(SymbolAnalysisContext symbolContext) 597private void OnSymbolEnd(SymbolAnalysisContext symbolEndContext, bool hasUnsupportedOperation)
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (1)
541SymbolAnalysisContext context)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
Microsoft.CodeAnalysis.CSharp.CodeStyle (3)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
108private void SymbolEndAction(SymbolAnalysisContext context)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructMemberReadOnly\CSharpMakeStructMemberReadOnlyAnalyzer.cs (1)
100SymbolAnalysisContext context, ReportDiagnostic severity, PooledDictionary<IMethodSymbol, Diagnostic> methodToDiagnostic)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
164private void OnSymbolEnd(SymbolAnalysisContext context)
Microsoft.CodeAnalysis.CSharp.Features (3)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
108private void SymbolEndAction(SymbolAnalysisContext context)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructMemberReadOnly\CSharpMakeStructMemberReadOnlyAnalyzer.cs (1)
100SymbolAnalysisContext context, ReportDiagnostic severity, PooledDictionary<IMethodSymbol, Diagnostic> methodToDiagnostic)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
164private void OnSymbolEnd(SymbolAnalysisContext context)
Microsoft.CodeAnalysis.Features (7)
src\9547feb31df4cc5d\AbstractRemoveUnusedParametersAndValuesDiagnosticAnalyzer.SymbolStartAnalyzer.cs (1)
109private void OnSymbolEnd(SymbolAnalysisContext context)
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (2)
86void AnalyzeFieldSymbol(SymbolAnalysisContext symbolContext) 114void OnSymbolEnd(SymbolAnalysisContext symbolEndContext)
src\roslyn\src\Analyzers\Core\Analyzers\NamingStyle\NamingStyleDiagnosticAnalyzerBase.cs (1)
56void SymbolAction(SymbolAnalysisContext symbolContext)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (2)
307private void AnalyzeSymbolDeclaration(SymbolAnalysisContext symbolContext) 597private void OnSymbolEnd(SymbolAnalysisContext symbolEndContext, bool hasUnsupportedOperation)
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (1)
541SymbolAnalysisContext context)
Microsoft.CodeAnalysis.NetAnalyzers (89)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\AbstractTypesShouldNotHaveConstructors.cs (1)
43private static void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\AvoidEmptyInterfaces.cs (1)
43private static void AnalyzeInterface(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\AvoidOutParameters.cs (1)
60public void Analyze(SymbolAnalysisContext analysisContext)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\CollectionPropertiesShouldBeReadOnly.cs (1)
73private static void AnalyzeSymbol(SymbolAnalysisContext context, KnownTypes knownTypes)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\CollectionsShouldImplementGenericInterface.cs (1)
102private static void AnalyzeSymbol(SymbolAnalysisContext context, ImmutableArray<KeyValuePair<INamedTypeSymbol, ImmutableArray<INamedTypeSymbol>>> interfacePairs)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DeclareTypesInNamespaces.cs (1)
42private static void AnalyzeNamedType(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DoNotHideBaseClassMethods.cs (1)
44private void SymbolAnalyzer(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DoNotPrefixEnumValuesWithTypeName.cs (1)
47private static void AnalyzeNamedType(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumShouldNotHaveDuplicatedValues.cs (1)
145void endVisitEnumSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumsShouldHaveZeroValue.cs (2)
102private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol flagsAttribute) 132SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumStorageShouldBeInt32.cs (1)
54private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol flagsAttribute)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumWithFlagsAttribute.cs (1)
83private static void AnalyzeSymbol(SymbolAnalysisContext symbolContext, INamedTypeSymbol flagsAttributeType)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EquatableAnalyzer.cs (1)
64private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol equatableType)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldDifferByMoreThanCase.cs (1)
65private static void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldNotContainTypeNames.cs (1)
121private static void AnalyzeSymbol(ISymbol symbol, SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldNotContainUnderscores.cs (3)
239private static bool IsInvalidSymbol(ISymbol symbol, SymbolAnalysisContext context) 249private static void AnalyzeParameters(SymbolAnalysisContext symbolAnalysisContext, IEnumerable<IParameterSymbol> parameters) 273private static void AnalyzeTypeParameters(SymbolAnalysisContext symbolAnalysisContext, IEnumerable<ITypeParameterSymbol> typeParameters)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldNotHaveIncorrectSuffix.cs (2)
142(SymbolAnalysisContext symbolAnalysisContext) => 227(SymbolAnalysisContext context) =>
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\IdentifiersShouldNotMatchKeywords.cs (6)
106private static bool ShouldAnalyze(SymbolAnalysisContext context, DiagnosticDescriptor rule) 116private static ImmutableHashSet<SymbolKind> GetSymbolKindsToAnalyze(SymbolAnalysisContext context, DiagnosticDescriptor rule) 124public void Analyze(SymbolAnalysisContext context) 173private static void AnalyzeTypeRule(SymbolAnalysisContext context) 191private static void AnalyzeMemberRule(SymbolAnalysisContext context) 215private static void AnalyzeMemberParameterRule(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\ImplementIDisposableCorrectly.cs (8)
184private void AnalyzeNamedTypeSymbol(SymbolAnalysisContext context) 282private static void CheckIDisposableReimplementationRule(INamedTypeSymbol type, SymbolAnalysisContext context, bool implementsDisposableInBaseType) 293private static void CheckDisposeSignatureRule(IMethodSymbol method, INamedTypeSymbol type, SymbolAnalysisContext context) 305private static void CheckRenameDisposeRule(IMethodSymbol method, INamedTypeSymbol type, SymbolAnalysisContext context) 316private void CheckDisposeOverrideRule(IMethodSymbol method, INamedTypeSymbol type, SymbolAnalysisContext context) 340private static void CheckFinalizeOverrideRule(INamedTypeSymbol type, SymbolAnalysisContext context) 356private static void CheckProvideDisposeBoolRule(INamedTypeSymbol type, SymbolAnalysisContext context) 364private static void CheckDisposeBoolSignatureRule(IMethodSymbol method, INamedTypeSymbol type, SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\ImplementStandardExceptionConstructors.cs (1)
128private static void ReportDiagnostic(SymbolAnalysisContext context, INamedTypeSymbol namedTypeSymbol, MissingCtorSignature missingCtorSignature, string constructorSignature)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\OperatorOverloadsHaveNamedAlternates.cs (1)
95private static void AnalyzeMethod(IMethodSymbol methodSymbol, SymbolAnalysisContext symbolContext)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\OperatorsShouldHaveSymmetricalOverloads.cs (2)
58SymbolAnalysisContext analysisContext, INamedTypeSymbol namedType, 68private static void CheckOperators(SymbolAnalysisContext analysisContext,
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\OverrideMethodsOnComparableTypes.cs (1)
87private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol? comparableType, INamedTypeSymbol? genericComparableType)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\ParameterNamesShouldMatchBaseDeclaration.cs (1)
46private static void AnalyzeMethodSymbol(SymbolAnalysisContext analysisContext)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\PropertiesShouldNotBeWriteOnly.cs (1)
59private static void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\PropertiesShouldNotReturnArrays.cs (1)
42private static void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\PropertyNamesShouldNotMatchGetMethods.cs (1)
52private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol? obsoleteAttributeType)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\ProvideObsoleteAttributeMessage.cs (1)
57private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol obsoleteAttributeType)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\StaticHolderTypes.cs (1)
65private static void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\TypesThatOwnDisposableFieldsShouldBeDisposable.cs (1)
103private static void AnalyzeSymbolEnd(SymbolAnalysisContext ctx, ref TemporarySet<string> disposableFieldNamesBuilder)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UriParametersShouldNotBeStrings.cs (1)
69public void Analyze(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UriPropertiesShouldNotBeStrings.cs (1)
65public void Analyze(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UriReturnValuesShouldNotBeStrings.cs (1)
65public void Analyze(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UseIntegralOrStringArgumentForIndexers.cs (1)
74private static void AnalyzeSymbol(SymbolAnalysisContext context, ImmutableHashSet<INamedTypeSymbol> allowedTypes)
Microsoft.CodeQuality.Analyzers\Maintainability\MakeTypesInternal.cs (1)
49private void AnalyzeType(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\QualityGuidelines\MarkMembersAsStatic.cs (1)
165void OnSymbolEnd(SymbolAnalysisContext context)
Microsoft.CodeQuality.Analyzers\QualityGuidelines\PreferJaggedArraysOverMultidimensional.cs (4)
70private static void AnalyzeField(SymbolAnalysisContext context) 80private static void AnalyzeProperty(SymbolAnalysisContext context) 99private static void AnalyzeMethod(SymbolAnalysisContext context) 129private static void AnalyzeParameters(SymbolAnalysisContext context, ISymbol containingSymbol, ImmutableArray<IParameterSymbol> parameters)
Microsoft.CodeQuality.Analyzers\QualityGuidelines\SealMethodsThatSatisfyPrivateInterfaces.cs (1)
43private static void CheckTypes(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\InteropServices\AvoidStringBuilderPInvokeParameters.cs (1)
48private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol stringBuilderType)
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DelegateInteropUsageAnalyzer.cs (1)
101private void AnalyzeMethod(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\InteropServices\DisableRuntimeMarshallingAnalyzer.DisabledRuntimeMarshallingAssemblyAnalyzer.cs (3)
60private void AnalyzeEvent(SymbolAnalysisContext context) 118public void AnalyzeType(SymbolAnalysisContext context) 130public void AnalyzeMethod(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\InteropServices\DoNotUseOutAttributeStringPInvokeParameters.cs (1)
48private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol outAttributeType)
Microsoft.NetCore.Analyzers\InteropServices\DynamicInterfaceCastableImplementation.cs (1)
81private static void AnalyzeType(SymbolAnalysisContext context, INamedTypeSymbol dynamicInterfaceCastableImplementationAttribute)
Microsoft.NetCore.Analyzers\InteropServices\PInvokeDiagnosticAnalyzer.cs (1)
105public void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\InteropServices\ProvidePublicParameterlessSafeHandleConstructor.cs (1)
48private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol safeHandleType)
Microsoft.NetCore.Analyzers\Performance\ConstantExpectedAnalyzer.cs (1)
145private static void OnMethodSymbol(SymbolAnalysisContext context, ConstantExpectedContext constantExpectedContext)
Microsoft.NetCore.Analyzers\Runtime\DetectPreviewFeatureAnalyzer.cs (8)
320private void ProcessFieldSymbolAttributes(SymbolAnalysisContext context, 334private void ProcessFieldOrEventSymbolAttributes(SymbolAnalysisContext context, 371private void ProcessEventSymbolAttributes(SymbolAnalysisContext context, 385private void ProcessTypeSymbolAttributes(SymbolAnalysisContext context, 524private void ProcessPropertyOrMethodAttributes(SymbolAnalysisContext context, 669private void AnalyzeSymbol(SymbolAnalysisContext context, 932private static void ReportDiagnosticWithCustomMessageIfItExists(SymbolAnalysisContext context, 959private static void ReportDiagnosticWithCustomMessageIfItExists(SymbolAnalysisContext context,
Microsoft.NetCore.Analyzers\Runtime\DisposableFieldsShouldBeDisposed.cs (1)
263void OnSymbolEnd(SymbolAnalysisContext symbolEndContext)
Microsoft.NetCore.Analyzers\Runtime\ProvideStreamMemoryBasedAsyncOverrides.cs (1)
60void AnalyzeNamedType(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\Runtime\SerializationRulesDiagnosticAnalyzer.cs (1)
102public void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.NetCore.Analyzers\Security\DataSetDataTableInSerializableTypeAnalyzer.cs (1)
131(SymbolAnalysisContext symbolAnalysisContext) =>
Microsoft.NetCore.Analyzers\Security\DataSetDataTableInWebSerializableObjectGraphAnalyzer.cs (1)
79(SymbolAnalysisContext symbolAnalysisContext) =>
Microsoft.NetCore.Analyzers\Security\DoNotDisableRequestValidation.cs (1)
52(SymbolAnalysisContext symbolAnalysisContext) =>
Microsoft.NetCore.Analyzers\Security\DoNotSerializeTypeWithPointerFields.cs (1)
60(SymbolAnalysisContext symbolAnalysisContext) =>
Microsoft.NetCore.Analyzers\Security\PotentialReferenceCycleInDeserializedObjectGraph.cs (1)
73(SymbolAnalysisContext symbolAnalysisContext) =>
Microsoft.NetCore.Analyzers\Usage\ImplementGenericMathInterfacesCorrectly.cs (1)
61private void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol symbol, INamespaceSymbol systemNS, INamespaceSymbol systemNumericsNS)
Microsoft.NetFramework.Analyzers\DoNotUseInsecureDtdProcessingInApiDesign.cs (3)
106public void AnalyzeSymbol(SymbolAnalysisContext context) 395private void AnalyzeSymbolForXmlDocumentDerivedType(SymbolAnalysisContext context) 435private void AnalyzeSymbolForXmlTextReaderDerivedType(SymbolAnalysisContext context)
Microsoft.NetFramework.Analyzers\MarkVerbHandlersWithValidateAntiforgeryTokenAnalyzer.cs (1)
98(SymbolAnalysisContext symbolContext) =>
Microsoft.CodeAnalysis.ResxSourceGenerator (9)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
Microsoft.CodeAnalysis.Workspaces (9)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
Microsoft.DotNet.CodeAnalysis (2)
Analyzers\MembersMustExistAnalyzer.cs (1)
83private void AnalyzeSymbol(SymbolAnalysisContext context)
Analyzers\PinvokeAnalyzer.cs (1)
133private void AnalyzeMethod(SymbolAnalysisContext context)
Microsoft.Interop.ComInterfaceGenerator (3)
Analyzers\ComClassGeneratorDiagnosticsAnalyzer.cs (1)
45private static void AnalyzeNamedType(SymbolAnalysisContext context, bool unsafeCodeIsEnabled, INamedTypeSymbol? generatedComClassAttributeType, INamedTypeSymbol? generatedComInterfaceAttributeType)
Analyzers\ComInterfaceGeneratorDiagnosticsAnalyzer.cs (1)
113SymbolAnalysisContext context,
Analyzers\VtableIndexStubDiagnosticsAnalyzer.cs (1)
81private static void AnalyzeMethod(SymbolAnalysisContext context, MethodDeclarationSyntax methodSyntax, IMethodSymbol method, StubEnvironment env)
Microsoft.Interop.JavaScript.JSImportGenerator (1)
Analyzers\JSImportExportDiagnosticsAnalyzer.cs (1)
112private bool AnalyzeMethod(SymbolAnalysisContext context, IMethodSymbol method, AttributeData attr, StubEnvironment env)
Microsoft.Interop.LibraryImportGenerator (3)
Analyzers\ConvertToLibraryImportAnalyzer.cs (1)
67private static void AnalyzeSymbol(SymbolAnalysisContext context, INamedTypeSymbol libraryImportAttrType, StubEnvironment env)
Analyzers\LibraryImportDiagnosticsAnalyzer.cs (2)
93private static bool AnalyzeMethod(SymbolAnalysisContext context, StubEnvironment env, INamedTypeSymbol libraryImportAttrType, LibraryImportGeneratorOptions options) 155SymbolAnalysisContext context,
Microsoft.Interop.LibraryImportGenerator.Downlevel (2)
DownlevelLibraryImportDiagnosticsAnalyzer.cs (2)
95private static bool AnalyzeMethod(SymbolAnalysisContext context, StubEnvironment env, INamedTypeSymbol libraryImportAttrType) 157SymbolAnalysisContext context,
Microsoft.ML.CodeAnalyzer.Tests (1)
Code\RelaxTestNamingTest.cs (1)
119private void AnalyzeSymbol(SymbolAnalysisContext context)
Microsoft.ML.InternalCodeAnalyzer (4)
BaseTestClassAnalyzer.cs (1)
65public void AnalyzeNamedType(SymbolAnalysisContext context)
BestFriendOnPublicDeclarationsAnalyzer.cs (1)
57private void AnalyzeCore(SymbolAnalysisContext context, INamedTypeSymbol attributeType)
InstanceInitializerAnalyzer.cs (2)
40private static void AnalyzeField(SymbolAnalysisContext context) 63private static void AnalyzeProperty(SymbolAnalysisContext context)
Roslyn.Diagnostics.Analyzers (23)
AbstractDoNotCopyValue.cs (4)
134protected abstract NonCopyableSymbolWalker CreateSymbolWalker(SymbolAnalysisContext context, NonCopyableTypesCache cache); 181private void AnalyzeSymbol(SymbolAnalysisContext context, NonCopyableTypesCache cache) 224private readonly SymbolAnalysisContext _context; 227protected NonCopyableSymbolWalker(SymbolAnalysisContext context, NonCopyableTypesCache cache)
DefaultableTypeShouldHaveDefaultableFieldsAnalyzer.cs (3)
56private static void AnalyzeField(SymbolAnalysisContext context, INamedTypeSymbol nonDefaultableAttribute, ConcurrentDictionary<ITypeSymbol, bool> knownNonDefaultableTypes) 61private static void AnalyzeNamedType(SymbolAnalysisContext context, INamedTypeSymbol nonDefaultableAttribute, ConcurrentDictionary<ITypeSymbol, bool> knownNonDefaultableTypes) 76private static void AnalyzeField(SymbolAnalysisContext originalContext, IFieldSymbol field, INamedTypeSymbol nonDefaultableAttribute, ConcurrentDictionary<ITypeSymbol, bool> knownNonDefaultableTypes)
DoNotMixAttributesFromDifferentVersionsOfMEF.cs (2)
61private static void AnalyzeSymbol(SymbolAnalysisContext symbolContext, IEnumerable<INamedTypeSymbol> exportAttributes, INamedTypeSymbol? attributeUsageAttribute) 119private static void ReportDiagnostic(SymbolAnalysisContext symbolContext, INamedTypeSymbol exportedType, AttributeData problematicAttribute)
ExportedPartsShouldHaveImportingConstructor.cs (1)
82private static void AnalyzeSymbolForAttribute(ref SymbolAnalysisContext context, INamedTypeSymbol? exportAttribute, INamedTypeSymbol? importingConstructorAttribute, INamedTypeSymbol namedType, IEnumerable<AttributeData> exportAttributes)
ImportingConstructorShouldBeObsolete.cs (1)
75private static void AnalyzeSymbolForAttribute(ref SymbolAnalysisContext context, INamedTypeSymbol? obsoleteAttribute, INamedTypeSymbol? exportAttribute, INamedTypeSymbol? importingConstructorAttribute, INamedTypeSymbol namedType, IEnumerable<AttributeData> exportAttributes)
IRemoteJsonServiceParameterAnalyzer.cs (1)
58SymbolAnalysisContext context,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\AnalysisContextExtensions.cs (9)
59/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 61/// - <paramref name="span"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 63public static bool ShouldAnalyzeSpan(this SymbolAnalysisContext context, TextSpan span, SyntaxTree tree) 69/// - <see cref="SymbolAnalysisContext.FilterSpan"/> is <see langword="null"/> (we are analyzing the entire tree) 71/// - <paramref name="location"/> intersects with <see cref="SymbolAnalysisContext.FilterSpan"/>. 73public static bool ShouldAnalyzeLocation(this SymbolAnalysisContext context, Location location) 172/// NOTE: This method expects <see cref="SymbolAnalysisContext.FilterTree"/> 173/// and <see cref="SymbolAnalysisContext.FilterSpan"/> to be non-null. 175public static SyntaxNode GetAnalysisRoot(this SymbolAnalysisContext context, bool findInTrivia, bool getInnermostNodeForTie = false)
SymbolDeclaredEventMustBeGeneratedForSourceSymbols.cs (1)
152internal void AnalyzeNamedType(SymbolAnalysisContext context)
TestExportsShouldNotBeDiscoverable.cs (1)
72private static void AnalyzeSymbolForAttribute(ref SymbolAnalysisContext context, INamedTypeSymbol? exportAttribute, INamedTypeSymbol namedType, IEnumerable<AttributeData> exportAttributes, IEnumerable<AttributeData> namedTypeAttributes)
Roslyn.Diagnostics.CSharp.Analyzers (2)
CSharpDoNotCopyValue.cs (2)
23protected override NonCopyableSymbolWalker CreateSymbolWalker(SymbolAnalysisContext context, NonCopyableTypesCache cache) 58public CSharpNonCopyableSymbolWalker(SymbolAnalysisContext context, NonCopyableTypesCache cache)
Roslyn.Diagnostics.VisualBasic.Analyzers (2)
VisualBasicDoNotCopyValue.vb (2)
20Protected Overrides Function CreateSymbolWalker(context As SymbolAnalysisContext, cache As NonCopyableTypesCache) As NonCopyableSymbolWalker 40Public Sub New(context As SymbolAnalysisContext, cache As NonCopyableTypesCache)
System.Windows.Forms.Analyzers.CSharp (1)
System\Windows\Forms\CSharp\Analyzers\MissingPropertySerializationConfiguration\MissingPropertySerializationConfigurationAnalyzer.cs (1)
25private static void AnalyzeSymbol(SymbolAnalysisContext context)
System.Windows.Forms.Analyzers.VisualBasic (1)
Analyzers\MissingPropertySerializationConfiguration\MissingPropertySerializationConfigurationDiagnosticAnalyzer.vb (1)
27Private Shared Sub AnalyzeSymbol(context As SymbolAnalysisContext)