580 references to ClassDeclarationSyntax
EventSourceGenerator (3)
IdeCoreBenchmarks (1)
ILLink.CodeFixProvider (1)
Microsoft.Analyzers.Extra (8)
Microsoft.Analyzers.Extra.Tests (2)
Microsoft.AspNetCore.App.Analyzers (2)
Microsoft.AspNetCore.App.CodeFixes (2)
Microsoft.AspNetCore.App.SourceGenerators (1)
Microsoft.AspNetCore.SignalR.Client.SourceGenerator (6)
Microsoft.CodeAnalysis.CSharp (11)
Syntax\ClassDeclarationSyntax.cs (1)
9public ClassDeclarationSyntax Update(SyntaxList<AttributeListSyntax> attributeLists, SyntaxTokenList modifiers, SyntaxToken keyword, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses, SyntaxToken openBraceToken, SyntaxList<MemberDeclarationSyntax> members, SyntaxToken closeBraceToken, SyntaxToken semicolonToken)
Syntax\SyntaxFactory.cs (5)
2905public static ClassDeclarationSyntax ClassDeclaration(SyntaxList<AttributeListSyntax> attributeLists, SyntaxTokenList modifiers, SyntaxToken keyword, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses, SyntaxToken openBraceToken, SyntaxList<MemberDeclarationSyntax> members, SyntaxToken closeBraceToken, SyntaxToken semicolonToken)
2914public static ClassDeclarationSyntax ClassDeclaration(SyntaxList<AttributeListSyntax> attributeLists, SyntaxTokenList modifiers, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses, SyntaxList<MemberDeclarationSyntax> members)
2920public static ClassDeclarationSyntax ClassDeclaration(SyntaxList<AttributeListSyntax> attributeLists, SyntaxTokenList modifiers, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, ParameterListSyntax? parameterList, BaseListSyntax? baseList, SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses, SyntaxList<MemberDeclarationSyntax> members)
2924public static ClassDeclarationSyntax ClassDeclaration(SyntaxToken identifier)
2928public static ClassDeclarationSyntax ClassDeclaration(string identifier)
Microsoft.CodeAnalysis.CSharp.Analyzers (2)
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (2)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (18)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (12)
Microsoft.CodeAnalysis.CSharp.EndToEnd.UnitTests (3)
Microsoft.CodeAnalysis.CSharp.Features (32)
Microsoft.CodeAnalysis.CSharp.Features.UnitTests (23)
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (2)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (217)
SourceGeneration\GeneratorDriverTests.cs (21)
1505var name = ctx.ForAttributeWithSimpleName<ClassDeclarationSyntax>("Attr")
2445var input = ctx.SyntaxProvider.CreateSyntaxProvider(static (n, _) => n is ClassDeclarationSyntax, (gsc, _) => (ClassDeclarationSyntax)gsc.Node)
2458Assert.Equal("C", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2463Assert.Equal("D", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2474Assert.Equal("C", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2479Assert.Equal("D", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2491Assert.Equal("E", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2496Assert.Equal("D", ((ClassDeclarationSyntax)step.Outputs[0].Value).Identifier.ValueText);
2690IncrementalValuesProvider<ClassDeclarationSyntax> classDeclarations = ctx.SyntaxProvider
2694IncrementalValueProvider<(Compilation, ImmutableArray<ClassDeclarationSyntax>)> compilationAndClasses =
2720static void validate(Compilation compilation, ImmutableArray<ClassDeclarationSyntax> nodes)
2722foreach (var node in nodes)
2729=> node is ClassDeclarationSyntax { AttributeLists: { Count: > 0 } };
2731static ClassDeclarationSyntax? getSemanticTargetForGeneration(GeneratorSyntaxContext context, CancellationToken cancellationToken)
2733var classDeclarationSyntax = (ClassDeclarationSyntax)context.Node;
3287ctx.RegisterSourceOutput(ctx.SyntaxProvider.CreateSyntaxProvider((node, ct) => node is ClassDeclarationSyntax c, (context, ct) => context.Node).WithTrackingName("Syntax"), (context, ct) => { });
3421ctx.RegisterSourceOutput(ctx.SyntaxProvider.CreateSyntaxProvider((node, ct) => node is ClassDeclarationSyntax c, (context, ct) => context.Node).WithTrackingName("Syntax"), (context, ct) => { });
4232static (node, _) => node is ClassDeclarationSyntax c,
4234.Select(static (node, _) => (ClassDeclarationSyntax)node)
SourceGeneration\GeneratorDriverTests_Attributes_FullyQualifiedName.cs (95)
74var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("N1.XAttribute");
83step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
116var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>(name);
153var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("N2.XAttribute");
162step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C2" }));
659var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
668step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
804var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
813step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
876var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
885step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
912var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
921step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
947var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
949(node, _) => node is ClassDeclarationSyntax,
953return (ClassDeclarationSyntax)ctx.TargetNode;
963step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
994var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
996(node, _) => node is ClassDeclarationSyntax,
1000return (ClassDeclarationSyntax)ctx.TargetNode;
1010step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1037var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
1072var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("System.CLSCompliantAttribute");
1326var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer1+InnerAttribute");
1335step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
1363var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer2+InnerAttribute");
1372step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C2" }));
1400var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer1+InnerAttribute`1");
1409step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
1437var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer2+InnerAttribute`2");
1446step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C2" }));
1474var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer1+InnerAttribute`2");
1510var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("Outer2+InnerAttribute`1");
1538var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1544return (ClassDeclarationSyntax)ctx.TargetNode;
1554step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1575var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1581return (ClassDeclarationSyntax)ctx.TargetNode;
1591step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1613var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1619return (ClassDeclarationSyntax)ctx.TargetNode;
1629step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1651var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1657return (ClassDeclarationSyntax)ctx.TargetNode;
1667step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1689var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1695return (ClassDeclarationSyntax)ctx.TargetNode;
1705step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1727var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1733return (ClassDeclarationSyntax)ctx.TargetNode;
1743step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
1755var provider = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("GenerateAttribute");
1927var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("N1.XAttribute");
1936step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
1960var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
1962(node, _) => node is ClassDeclarationSyntax,
1967return (ClassDeclarationSyntax)context.TargetNode;
1979output => Assert.True(output.Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }),
1980output => Assert.True(output.Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" })));
1983Assert.Equal(2, steps.SelectMany(s => s.Outputs.Select(o => (ClassDeclarationSyntax)o.Value)).Distinct().Count());
2008var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
2010(node, _) => node is ClassDeclarationSyntax,
2015return (ClassDeclarationSyntax)context.TargetNode;
2025step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
2048var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("N1.XAttribute");
2057step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
2081var input = ctx.SyntaxProvider.ForAttributeWithMetadataName<ClassDeclarationSyntax>(
2083(node, _) => node is ClassDeclarationSyntax,
2088return (ClassDeclarationSyntax)context.TargetNode;
2100step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }),
2101step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
2105steps.Select(s => ((ClassDeclarationSyntax)s.Outputs.Single().Value).SyntaxTree),
2131var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("N1.XAttribute");
2140step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }));
2167var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2176step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2183step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2214var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2223step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2230step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2261var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2270step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2276step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2304var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2322step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2352var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2371t => Assert.True(t.Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" }),
2372t => Assert.True(t.Value is ClassDeclarationSyntax { Identifier.ValueText: "C2" })));
2405var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2423step => Assert.Collection(step.Outputs, t => Assert.True(t.Value is ClassDeclarationSyntax { Identifier.ValueText: "C1" })),
2424step => Assert.Collection(step.Outputs, t => Assert.True(t.Value is ClassDeclarationSyntax { Identifier.ValueText: "C2" })));
2464var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2487step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
2516var input = ctx.ForAttributeWithMetadataName<ClassDeclarationSyntax>("XAttribute");
2535step => Assert.True(step.Outputs.Single().Value is ClassDeclarationSyntax { Identifier.ValueText: "C" }));
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (25)
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (32)
Microsoft.CodeAnalysis.CSharp.Workspaces (2)
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (80)
CodeGeneration\SyntaxGeneratorTests.cs (80)
1634VerifySyntax<ClassDeclarationSyntax>(
1638VerifySyntax<ClassDeclarationSyntax>(
1642VerifySyntax<ClassDeclarationSyntax>(
1646VerifySyntax<ClassDeclarationSyntax>(
1650VerifySyntax<ClassDeclarationSyntax>(
1654VerifySyntax<ClassDeclarationSyntax>(
1658VerifySyntax<ClassDeclarationSyntax>(
1662VerifySyntax<ClassDeclarationSyntax>(
1666VerifySyntax<ClassDeclarationSyntax>(
1993VerifySyntax<ClassDeclarationSyntax>(
2090VerifySyntax<ClassDeclarationSyntax>(added, "// comment\r\n[a]\r\npublic class C\r\n{\r\n} // end\r\n");
2093VerifySyntax<ClassDeclarationSyntax>(removed, "// comment\r\npublic class C\r\n{\r\n} // end\r\n");
2125VerifySyntax<ClassDeclarationSyntax>(
2222VerifySyntax<ClassDeclarationSyntax>(
3271var fileClass = (ClassDeclarationSyntax)ParseMemberDeclaration("file class C { }");
3272var fileAbstractClass = Generator.WithModifiers(fileClass, Generator.GetModifiers(fileClass).WithIsAbstract(true));
3273VerifySyntax<ClassDeclarationSyntax>(fileAbstractClass, """
3283var fileClass = (ClassDeclarationSyntax)ParseMemberDeclaration("file class C { }");
3285VerifySyntax<ClassDeclarationSyntax>(filePublicClass, """
3295var abstractClass = (ClassDeclarationSyntax)ParseMemberDeclaration("abstract class C { }");
3296var fileAbstractClass = Generator.WithModifiers(abstractClass, Generator.GetModifiers(abstractClass).WithIsFile(true));
3297VerifySyntax<ClassDeclarationSyntax>(fileAbstractClass, """
3307var publicClass = (ClassDeclarationSyntax)ParseMemberDeclaration("public class C { }");
3308var filePublicClass = Generator.WithModifiers(publicClass, Generator.GetModifiers(publicClass).WithIsFile(true));
3309VerifySyntax<ClassDeclarationSyntax>(filePublicClass, """
3848VerifySyntax<ClassDeclarationSyntax>(
3856VerifySyntax<ClassDeclarationSyntax>(
3864VerifySyntax<ClassDeclarationSyntax>(
3897VerifySyntax<ClassDeclarationSyntax>(
3905VerifySyntax<ClassDeclarationSyntax>(
3914VerifySyntax<ClassDeclarationSyntax>(
3947VerifySyntax<ClassDeclarationSyntax>(
3955VerifySyntax<ClassDeclarationSyntax>(
3963VerifySyntax<ClassDeclarationSyntax>(
4052VerifySyntax<ClassDeclarationSyntax>(
4062VerifySyntax<ClassDeclarationSyntax>(
4073VerifySyntax<ClassDeclarationSyntax>(
4084VerifySyntax<ClassDeclarationSyntax>(
4094VerifySyntax<ClassDeclarationSyntax>(
4104VerifySyntax<ClassDeclarationSyntax>(
4114VerifySyntax<ClassDeclarationSyntax>(
4125VerifySyntax<ClassDeclarationSyntax>(
4135VerifySyntax<ClassDeclarationSyntax>(
4145VerifySyntax<ClassDeclarationSyntax>(
4154VerifySyntax<ClassDeclarationSyntax>(
4162VerifySyntax<ClassDeclarationSyntax>(
4171VerifySyntax<ClassDeclarationSyntax>(
4215VerifySyntax<ClassDeclarationSyntax>(
4409VerifySyntax<ClassDeclarationSyntax>(
4419VerifySyntax<ClassDeclarationSyntax>(
4430VerifySyntax<ClassDeclarationSyntax>(
4441VerifySyntax<ClassDeclarationSyntax>(
4452VerifySyntax<ClassDeclarationSyntax>(
4461VerifySyntax<ClassDeclarationSyntax>(
4470VerifySyntax<ClassDeclarationSyntax>(
4479VerifySyntax<ClassDeclarationSyntax>(
4488VerifySyntax<ClassDeclarationSyntax>(
4497VerifySyntax<ClassDeclarationSyntax>(
4506VerifySyntax<ClassDeclarationSyntax>(
4515VerifySyntax<ClassDeclarationSyntax>(
4524VerifySyntax<ClassDeclarationSyntax>(
4533VerifySyntax<ClassDeclarationSyntax>(
4542VerifySyntax<ClassDeclarationSyntax>(
4899var decl = root.DescendantNodes().OfType<ClassDeclarationSyntax>().First();
4995VerifySyntax<ClassDeclarationSyntax>(
5309VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5338VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5365VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5411VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5473VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5532VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5568VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5604VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5634VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
5659VerifySyntax<ClassDeclarationSyntax>(Generator.Declaration(symbol),
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (4)
Microsoft.CodeAnalysis.Razor.Workspaces (9)
Microsoft.CodeAnalysis.Remote.Razor (4)
Microsoft.CodeAnalysis.UnitTests (2)
Microsoft.CodeAnalysis.Workspaces.MSBuild.UnitTests (3)
Microsoft.CodeAnalysis.Workspaces.UnitTests (8)
Microsoft.DotNet.GenFacades (1)
Microsoft.Extensions.Logging.Generators (6)
Microsoft.Extensions.Options.SourceGeneration (1)
Microsoft.Gen.BuildMetadata (4)
Microsoft.Gen.ComplianceReports (1)
Microsoft.Gen.Logging (5)
Microsoft.Gen.MetadataExtractor (4)
Microsoft.Gen.Metrics (4)
Microsoft.Gen.MetricsReports (3)
Microsoft.Interop.ComInterfaceGenerator (4)
Microsoft.ML.InternalCodeAnalyzer (1)
Microsoft.VisualStudio.LanguageServices.CSharp (15)
Microsoft.VisualStudio.LanguageServices.Razor (2)
QuarantineTools.Tests (2)
Roslyn.Diagnostics.CSharp.Analyzers (2)
System.Text.Json.SourceGeneration (5)
System.Text.RegularExpressions.Generator (1)
System.Windows.Forms.Analyzers.CSharp (1)