From fdb60ace2edd2874d231fa4c71f1df7acf9cadc4 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 4 Jun 2020 00:44:49 -0700 Subject: [PATCH] Respond to PR comments --- .../Generated/Syntax.xml.Main.Generated.cs | 12 ++++++ .../Source/SourceConstructorSymbolBase.cs | 4 +- .../Records/SynthesizedRecordConstructor.cs | 2 +- .../Syntax/StructDeclarationSyntax.cs | 43 ------------------- .../CSharp/Portable/Syntax/Syntax.xml | 2 +- 5 files changed, 15 insertions(+), 48 deletions(-) delete mode 100644 src/Compilers/CSharp/Portable/Syntax/StructDeclarationSyntax.cs diff --git a/src/Compilers/CSharp/Portable/Generated/Syntax.xml.Main.Generated.cs b/src/Compilers/CSharp/Portable/Generated/Syntax.xml.Main.Generated.cs index 2e65425a03a..f7e6ab7cdc6 100644 --- a/src/Compilers/CSharp/Portable/Generated/Syntax.xml.Main.Generated.cs +++ b/src/Compilers/CSharp/Portable/Generated/Syntax.xml.Main.Generated.cs @@ -4889,6 +4889,18 @@ public static StructDeclarationSyntax StructDeclaration(SyntaxList(), modifiers.Node.ToGreenList(), (Syntax.InternalSyntax.SyntaxToken)keyword.Node!, (Syntax.InternalSyntax.SyntaxToken)identifier.Node!, typeParameterList == null ? null : (Syntax.InternalSyntax.TypeParameterListSyntax)typeParameterList.Green, baseList == null ? null : (Syntax.InternalSyntax.BaseListSyntax)baseList.Green, constraintClauses.Node.ToGreenList(), (Syntax.InternalSyntax.SyntaxToken)openBraceToken.Node!, members.Node.ToGreenList(), (Syntax.InternalSyntax.SyntaxToken)closeBraceToken.Node!, (Syntax.InternalSyntax.SyntaxToken?)semicolonToken.Node).CreateRed(); } + /// Creates a new StructDeclarationSyntax instance. + public static StructDeclarationSyntax StructDeclaration(SyntaxList attributeLists, SyntaxTokenList modifiers, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList constraintClauses, SyntaxList members) + => SyntaxFactory.StructDeclaration(attributeLists, modifiers, SyntaxFactory.Token(SyntaxKind.StructKeyword), identifier, typeParameterList, baseList, constraintClauses, SyntaxFactory.Token(SyntaxKind.OpenBraceToken), members, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default); + + /// Creates a new StructDeclarationSyntax instance. + public static StructDeclarationSyntax StructDeclaration(SyntaxToken identifier) + => SyntaxFactory.StructDeclaration(default, default(SyntaxTokenList), SyntaxFactory.Token(SyntaxKind.StructKeyword), identifier, default, default, default, SyntaxFactory.Token(SyntaxKind.OpenBraceToken), default, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default); + + /// Creates a new StructDeclarationSyntax instance. + public static StructDeclarationSyntax StructDeclaration(string identifier) + => SyntaxFactory.StructDeclaration(default, default(SyntaxTokenList), SyntaxFactory.Token(SyntaxKind.StructKeyword), SyntaxFactory.Identifier(identifier), default, default, default, SyntaxFactory.Token(SyntaxKind.OpenBraceToken), default, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default); + /// Creates a new InterfaceDeclarationSyntax instance. public static InterfaceDeclarationSyntax InterfaceDeclaration(SyntaxList attributeLists, SyntaxTokenList modifiers, SyntaxToken keyword, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList constraintClauses, SyntaxToken openBraceToken, SyntaxList members, SyntaxToken closeBraceToken, SyntaxToken semicolonToken) { diff --git a/src/Compilers/CSharp/Portable/Symbols/Source/SourceConstructorSymbolBase.cs b/src/Compilers/CSharp/Portable/Symbols/Source/SourceConstructorSymbolBase.cs index e2e9a5c0b4c..f66baedd749 100644 --- a/src/Compilers/CSharp/Portable/Symbols/Source/SourceConstructorSymbolBase.cs +++ b/src/Compilers/CSharp/Portable/Symbols/Source/SourceConstructorSymbolBase.cs @@ -26,8 +26,6 @@ internal abstract class SourceConstructorSymbolBase : SourceMemberMethodSymbol { Debug.Assert( syntax.IsKind(SyntaxKind.ConstructorDeclaration) || - syntax.IsKind(SyntaxKind.ClassDeclaration) || - syntax.IsKind(SyntaxKind.StructDeclaration) || syntax.IsKind(SyntaxKind.RecordDeclaration)); } @@ -75,7 +73,7 @@ protected sealed override void MethodChecks(DiagnosticBag diagnostics) } #nullable enable - protected abstract ParameterListSyntax? GetParameterList(); + protected abstract ParameterListSyntax GetParameterList(); #nullable restore internal sealed override void AfterAddingTypeMembersChecks(ConversionsBase conversions, DiagnosticBag diagnostics) diff --git a/src/Compilers/CSharp/Portable/Symbols/Synthesized/Records/SynthesizedRecordConstructor.cs b/src/Compilers/CSharp/Portable/Symbols/Synthesized/Records/SynthesizedRecordConstructor.cs index f43324c45ea..f5c15fc24d8 100644 --- a/src/Compilers/CSharp/Portable/Symbols/Synthesized/Records/SynthesizedRecordConstructor.cs +++ b/src/Compilers/CSharp/Portable/Symbols/Synthesized/Records/SynthesizedRecordConstructor.cs @@ -29,7 +29,7 @@ internal RecordDeclarationSyntax GetSyntax() return (RecordDeclarationSyntax)syntaxReferenceOpt.GetSyntax(); } - protected override ParameterListSyntax? GetParameterList() => GetSyntax().ParameterList; + protected override ParameterListSyntax GetParameterList() => GetSyntax().ParameterList!; protected override CSharpSyntaxNode? GetInitializer() { diff --git a/src/Compilers/CSharp/Portable/Syntax/StructDeclarationSyntax.cs b/src/Compilers/CSharp/Portable/Syntax/StructDeclarationSyntax.cs deleted file mode 100644 index e2d25de7c2e..00000000000 --- a/src/Compilers/CSharp/Portable/Syntax/StructDeclarationSyntax.cs +++ /dev/null @@ -1,43 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - - -#nullable enable - -using Microsoft.CodeAnalysis.CSharp.Syntax; - -namespace Microsoft.CodeAnalysis.CSharp -{ - public partial class SyntaxFactory - { - public static StructDeclarationSyntax StructDeclaration( - SyntaxList attributeLists, - SyntaxTokenList modifiers, - SyntaxToken identifier, - TypeParameterListSyntax typeParameterList, - BaseListSyntax baseList, - SyntaxList constraintClauses, - SyntaxList members) - => SyntaxFactory.StructDeclaration( - attributeLists, - modifiers, - SyntaxFactory.Token(SyntaxKind.StructKeyword), - identifier, - typeParameterList, - baseList, - constraintClauses, - SyntaxFactory.Token(SyntaxKind.OpenBraceToken), - members, - SyntaxFactory.Token(SyntaxKind.CloseBraceToken), - semicolonToken: default); - - /// Creates a new StructDeclarationSyntax instance. - public static StructDeclarationSyntax StructDeclaration(SyntaxToken identifier) - => SyntaxFactory.StructDeclaration(default, default(SyntaxTokenList), SyntaxFactory.Token(SyntaxKind.StructKeyword), identifier, null, null, default, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default); - - /// Creates a new StructDeclarationSyntax instance. - public static StructDeclarationSyntax StructDeclaration(string identifier) - => SyntaxFactory.StructDeclaration(default, default(SyntaxTokenList), SyntaxFactory.Token(SyntaxKind.StructKeyword), SyntaxFactory.Identifier(identifier), null, null, default, default, default, default, default); - } -} diff --git a/src/Compilers/CSharp/Portable/Syntax/Syntax.xml b/src/Compilers/CSharp/Portable/Syntax/Syntax.xml index 59e752bef2c..b9977384959 100644 --- a/src/Compilers/CSharp/Portable/Syntax/Syntax.xml +++ b/src/Compilers/CSharp/Portable/Syntax/Syntax.xml @@ -3246,7 +3246,7 @@ - + Struct type declaration syntax. -- GitLab