Ejemplo n.º 1
0
 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()
                ));
 }
        string Render(Docs docs)
        {
            Property property = new Property(
                "myProp",
                new TypeReference(primitive: PrimitiveType.String),
                false,
                false,
                false,
                docs
                );

            PropertyDocCommentGenerator generator = new PropertyDocCommentGenerator(property);

            SyntaxTrivia docComment = generator.CreateDocComment();
            SyntaxTree   tree       = SF.SyntaxTree(
                SF.PropertyDeclaration(SF.ParseTypeName("string"), "MyProp")
                .WithLeadingTrivia(generator.CreateDocComment())
                .NormalizeWhitespace(elasticTrivia: true)
                );

            return(tree.ToString());
        }
Ejemplo n.º 3
0
 public PropertyDeclarationSyntax Build()
 => SF.PropertyDeclaration(ParseType(_type), _name)
 .AddModifiers(_modifiers.Build().ToArray())
 .WithAccessorList(SF.AccessorList(SF.List(_accessors.Select(a => a.Build()))));