public override ClassDeclarationSyntax Apply(ClassDeclarationSyntax node, INamedTypeSymbol symbol, CancellationToken cancellationToken) { return(node.AddMembers( F.PropertyDeclaration( F.ParseTypeName(node.Identifier.Text), name ).WithAccessorList( F.AccessorList().AddAccessors(F.AccessorDeclaration(K.GetAccessorDeclaration)) ).WithModifiers( F.TokenList(F.Token(K.PublicKeyword), F.Token(K.StaticKeyword)) ).WithInitializer( F.EqualsValueClause(F.ObjectCreationExpression(F.ParseTypeName(node.Identifier.Text))) ).NormalizeWhitespace() )); }
public PropertyDeclarationSyntax Build() => SF.PropertyDeclaration(ParseType(_type), _name) .AddModifiers(_modifiers.Build().ToArray()) .WithAccessorList(SF.AccessorList(SF.List(_accessors.Select(a => a.Build()))));