96 references to DeclarationKind
GenerateDocumentationAndConfigFiles (2)
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (2)
438public static SyntaxNode? TryGetContainingDeclaration(this SyntaxGenerator generator, SyntaxNode? node, DeclarationKind kind) 445var declarationKind = generator.GetDeclarationKind(node);
Microsoft.CodeAnalysis.Analyzers (6)
MetaAnalyzers\Fixers\ConfigureGeneratedCodeAnalysisFix.cs (2)
57var parameterDeclaration = generator.TryGetContainingDeclaration(analysisContextParameter, DeclarationKind.Parameter); 63var methodDeclaration = generator.TryGetContainingDeclaration(parameterDeclaration.Parent, DeclarationKind.Method);
MetaAnalyzers\Fixers\EnableConcurrentExecutionFix.cs (2)
49var parameterDeclaration = generator.TryGetContainingDeclaration(analysisContextParameter, DeclarationKind.Parameter); 55var methodDeclaration = generator.TryGetContainingDeclaration(parameterDeclaration.Parent, DeclarationKind.Method);
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (2)
438public static SyntaxNode? TryGetContainingDeclaration(this SyntaxGenerator generator, SyntaxNode? node, DeclarationKind kind) 445var declarationKind = generator.GetDeclarationKind(node);
Microsoft.CodeAnalysis.CSharp.NetAnalyzers (2)
Microsoft.NetCore.Analyzers\InteropServices\CSharpDynamicInterfaceCastableImplementation.Fixer.cs (2)
162if (generator.GetAccessor(eventDeclaration, DeclarationKind.AddAccessor) is not SyntaxNode addAccessor || 163generator.GetAccessor(eventDeclaration, DeclarationKind.RemoveAccessor) is not SyntaxNode removeAccessor)
Microsoft.CodeAnalysis.CSharp.Workspaces (45)
CodeGeneration\CSharpSyntaxGenerator.cs (45)
1889public override DeclarationKind GetDeclarationKind(SyntaxNode declaration) 1895return DeclarationKind.Class; 1898return DeclarationKind.Struct; 1900return DeclarationKind.Interface; 1902return DeclarationKind.Enum; 1904return DeclarationKind.Delegate; 1907return DeclarationKind.Method; 1909return DeclarationKind.Operator; 1911return DeclarationKind.ConversionOperator; 1913return DeclarationKind.Constructor; 1915return DeclarationKind.Destructor; 1918return DeclarationKind.Property; 1920return DeclarationKind.Indexer; 1922return DeclarationKind.CustomEvent; 1924return DeclarationKind.EnumMember; 1926return DeclarationKind.CompilationUnit; 1929return DeclarationKind.Namespace; 1931return DeclarationKind.NamespaceImport; 1933return DeclarationKind.Parameter; 1937return DeclarationKind.LambdaExpression; 1944return DeclarationKind.Field; 1948return DeclarationKind.None; 1956return DeclarationKind.Event; 1960return DeclarationKind.None; 1968return DeclarationKind.Variable; 1972return DeclarationKind.None; 1981return DeclarationKind.Variable; 1985return DeclarationKind.None; 1998return DeclarationKind.Field; 2002return DeclarationKind.Event; 2006return DeclarationKind.Variable; 2017return DeclarationKind.Attribute; 2025return DeclarationKind.Attribute; 2031return DeclarationKind.GetAccessor; 2034return DeclarationKind.SetAccessor; 2036return DeclarationKind.AddAccessor; 2038return DeclarationKind.RemoveAccessor; 2041return DeclarationKind.None; 2276case DeclarationKind.Class: 2277case DeclarationKind.Interface: 2278case DeclarationKind.Struct: 2279case DeclarationKind.Enum: 2280case DeclarationKind.Namespace: 2281case DeclarationKind.CompilationUnit: 2290case DeclarationKind.Attribute:
Microsoft.CodeAnalysis.NetAnalyzers (20)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\DefineAccessorsForAttributeArguments.Fixer.cs (5)
89DefineAccessorsForAttributeArgumentsAnalyzer.AddAccessorCase => generator.GetDeclaration(node, DeclarationKind.Parameter), 90DefineAccessorsForAttributeArgumentsAnalyzer.MakePublicCase => generator.GetDeclaration(node, DeclarationKind.Property), 146SyntaxNode? typeDeclaration = editor.Generator.GetDeclaration(parameter, DeclarationKind.Class); 166SyntaxNode? propertyDeclaration = editor.Generator.GetDeclaration(await reference.GetSyntaxAsync(cancellationToken).ConfigureAwait(false), DeclarationKind.Property); 190SyntaxNode? setter = editor.Generator.GetAccessor(property, DeclarationKind.SetAccessor);
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\EnumStorageShouldBeInt32.Fixer.cs (1)
33if (editor.Generator.GetDeclaration(node, DeclarationKind.Enum) is not SyntaxNode enumDeclarationNode)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\ImplementStandardExceptionConstructors.Fixer.cs (1)
51if (generator.GetDeclaration(node, DeclarationKind.Class) is not SyntaxNode targetNode ||
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\OperatorOverloadsHaveNamedAlternates.Fixer.cs (6)
47if ((generator.GetDeclaration(node, DeclarationKind.Operator) ?? generator.GetDeclaration(node, DeclarationKind.ConversionOperator)) is not SyntaxNode methodDeclaration || 66typeSymbol.TypeKind == TypeKind.Struct ? DeclarationKind.Struct : DeclarationKind.Class) is not SyntaxNode typeDeclaration) 119if ((generator.GetDeclaration(node, DeclarationKind.Method) ?? generator.GetDeclaration(node, DeclarationKind.Property)) is SyntaxNode badVisibilityNode)
Microsoft.CodeQuality.Analyzers\ApiDesignGuidelines\UriParametersShouldNotBeStrings.Fixer.cs (3)
89var methodNode = generator.GetDeclaration(parameter, DeclarationKind.Method); 96var targetNode = generator.GetDeclaration(parameter, DeclarationKind.Class) ?? generator.GetDeclaration(parameter, DeclarationKind.Struct);
Microsoft.CodeQuality.Analyzers\QualityGuidelines\UseLiteralsWhereAppropriate.Fixer.cs (2)
28declaration = SyntaxGenerator.GetGenerator(context.Document).GetDeclaration(declaration, DeclarationKind.Field); 41declaration = editor.Generator.GetDeclaration(declaration, DeclarationKind.Field);
src\sdk\src\Microsoft.CodeAnalysis.NetAnalyzers\src\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (2)
443public static SyntaxNode? TryGetContainingDeclaration(this SyntaxGenerator generator, SyntaxNode? node, DeclarationKind kind) 450var declarationKind = generator.GetDeclarationKind(node);
Microsoft.CodeAnalysis.Workspaces (5)
Editing\SyntaxGenerator.cs (5)
90if (GetDeclarationKind(node) != DeclarationKind.None) 104public SyntaxNode? GetDeclaration(SyntaxNode? node, DeclarationKind kind) 1291/// Gets the <see cref="DeclarationKind"/> for the declaration. 1293public abstract DeclarationKind GetDeclarationKind(SyntaxNode declaration); 1377public SyntaxNode? GetAccessor(SyntaxNode declaration, DeclarationKind kind)
Microsoft.Interop.ComInterfaceGenerator (1)
Analyzers\ConvertComImportToGeneratedComInterfaceFixer.cs (1)
109if (gen.GetDeclarationKind(member) != DeclarationKind.Method)
Roslyn.Diagnostics.Analyzers (15)
AbstractApplyTraitToClass`1.cs (3)
42if (syntaxGenerator.TryGetContainingDeclaration(attribute, DeclarationKind.Method) is null) 75if (syntaxGenerator.TryGetContainingDeclaration(state.AttributeSyntax, DeclarationKind.Attribute) is not { } attribute) 80if (syntaxGenerator.TryGetContainingDeclaration(attribute, DeclarationKind.Method) is not { } method)
ExportedPartsShouldHaveImportingConstructorCodeFixProvider.cs (4)
105var declaration = generator.TryGetContainingDeclaration(exportAttribute, DeclarationKind.Class); 126case DeclarationKind.Field: 148var declaration = generator.TryGetContainingDeclaration(importingConstructorAttribute, DeclarationKind.Constructor); 167var declaration = generator.TryGetContainingDeclaration(constructor, DeclarationKind.Constructor);
ImportingConstructorShouldBeObsoleteCodeFixProvider.cs (5)
100: generator.TryGetContainingDeclaration(attributeName, DeclarationKind.Constructor); 126var declaration = generator.TryGetContainingDeclaration(obsoleteAttributeApplication, DeclarationKind.Attribute); 147var declaration = generator.TryGetContainingDeclaration(obsoleteAttributeApplication, DeclarationKind.Attribute); 171var declaration = generator.TryGetContainingDeclaration(obsoleteAttributeApplication, DeclarationKind.Attribute); 190var declaration = generator.TryGetContainingDeclaration(obsoleteAttributeApplication, DeclarationKind.Attribute);
src\roslyn\src\RoslynAnalyzers\Utilities\Workspaces\SyntaxGeneratorExtensions.cs (2)
438public static SyntaxNode? TryGetContainingDeclaration(this SyntaxGenerator generator, SyntaxNode? node, DeclarationKind kind) 445var declarationKind = generator.GetDeclarationKind(node);
TestExportsShouldNotBeDiscoverableCodeFixProvider.cs (1)
59var declaration = generator.TryGetContainingDeclaration(exportingAttribute, DeclarationKind.Class);