提交 fdb60ace 编写于 作者: A Andy Gocke

Respond to PR comments

上级 53caa79b
......@@ -4889,6 +4889,18 @@ public static StructDeclarationSyntax StructDeclaration(SyntaxList<AttributeList
return (StructDeclarationSyntax)Syntax.InternalSyntax.SyntaxFactory.StructDeclaration(attributeLists.Node.ToGreenList<Syntax.InternalSyntax.AttributeListSyntax>(), modifiers.Node.ToGreenList<Syntax.InternalSyntax.SyntaxToken>(), (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.TypeParameterConstraintClauseSyntax>(), (Syntax.InternalSyntax.SyntaxToken)openBraceToken.Node!, members.Node.ToGreenList<Syntax.InternalSyntax.MemberDeclarationSyntax>(), (Syntax.InternalSyntax.SyntaxToken)closeBraceToken.Node!, (Syntax.InternalSyntax.SyntaxToken?)semicolonToken.Node).CreateRed();
}
/// <summary>Creates a new StructDeclarationSyntax instance.</summary>
public static StructDeclarationSyntax StructDeclaration(SyntaxList<AttributeListSyntax> attributeLists, SyntaxTokenList modifiers, SyntaxToken identifier, TypeParameterListSyntax? typeParameterList, BaseListSyntax? baseList, SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses, SyntaxList<MemberDeclarationSyntax> members)
=> SyntaxFactory.StructDeclaration(attributeLists, modifiers, SyntaxFactory.Token(SyntaxKind.StructKeyword), identifier, typeParameterList, baseList, constraintClauses, SyntaxFactory.Token(SyntaxKind.OpenBraceToken), members, SyntaxFactory.Token(SyntaxKind.CloseBraceToken), default);
/// <summary>Creates a new StructDeclarationSyntax instance.</summary>
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);
/// <summary>Creates a new StructDeclarationSyntax instance.</summary>
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);
/// <summary>Creates a new InterfaceDeclarationSyntax instance.</summary>
public static InterfaceDeclarationSyntax InterfaceDeclaration(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)
{
......
......@@ -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)
......
......@@ -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()
{
......
// 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<AttributeListSyntax> attributeLists,
SyntaxTokenList modifiers,
SyntaxToken identifier,
TypeParameterListSyntax typeParameterList,
BaseListSyntax baseList,
SyntaxList<TypeParameterConstraintClauseSyntax> constraintClauses,
SyntaxList<MemberDeclarationSyntax> members)
=> SyntaxFactory.StructDeclaration(
attributeLists,
modifiers,
SyntaxFactory.Token(SyntaxKind.StructKeyword),
identifier,
typeParameterList,
baseList,
constraintClauses,
SyntaxFactory.Token(SyntaxKind.OpenBraceToken),
members,
SyntaxFactory.Token(SyntaxKind.CloseBraceToken),
semicolonToken: default);
/// <summary>Creates a new StructDeclarationSyntax instance.</summary>
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);
/// <summary>Creates a new StructDeclarationSyntax instance.</summary>
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);
}
}
......@@ -3246,7 +3246,7 @@
<Kind Name="SemicolonToken"/>
</Field>
</Node>
<Node Name="StructDeclarationSyntax" Base="TypeDeclarationSyntax" SkipConvenienceFactories="true">
<Node Name="StructDeclarationSyntax" Base="TypeDeclarationSyntax">
<TypeComment>
<summary>Struct type declaration syntax.</summary>
</TypeComment>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册