protected virtual BoundStatement RewriteVariableDeclaration(BoundVariableDeclaration node)
        {
            var initializer = RewriteExpression(node.Initializer);

            if (initializer == node.Initializer)
            {
                return(node);
            }

            return(new BoundVariableDeclaration(node.Variable, initializer));
        }
 private static void WriteVariableDeclaration(BoundVariableDeclaration node, IndentedTextWriter writer)
 {
     writer.WriteKeyword(node.Variable.IsReadOnly ? SyntaxKind.LetKeyword : SyntaxKind.VarKeyword);
     writer.WriteSpace();
     writer.WriteIdentifier(node.Variable.Name);
     writer.WriteSpace();
     writer.WritePunctuation(SyntaxKind.EqualsToken);
     writer.WriteSpace();
     node.Initializer.WriteTo(writer);
     writer.WriteLine();
 }