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 void Add(VariableDeclaratorSyntax node) { var equalsValue = SF.EqualsValueClause(VisitExpression(node.Initializer.Value)); node = SF.VariableDeclarator(node.Identifier, null, equalsValue); if (Variables.ContainsKey(node.Identifier.Text)) { // Temporary workaround for variables declaration in loops Update(node.Identifier.Text, node.Initializer.Value); } else { Variables.Add(node.Identifier.Text, node.Initializer.Value); } }
public static LocalDeclarationStatementSyntax LocalVairableDeclaration( this TypeSyntax type, string name, ExpressionSyntax value = null) { var declarator = SF.VariableDeclarator(SF.Identifier(name)); if (value != null) { declarator = declarator.WithInitializer(SF.EqualsValueClause(value)); } var delaration = SF.LocalDeclarationStatement( SF.VariableDeclaration(type) .WithVariables(SF.SingletonSeparatedList(declarator))); return(delaration); }