示例#1
0
            public override SyntaxList <StatementSyntax> VisitUsingStatement(CSS.UsingStatementSyntax node)
            {
                UsingStatementSyntax stmt;

                if (node.Declaration == null)
                {
                    stmt = SyntaxFactory.UsingStatement(
                        (ExpressionSyntax)node.Expression?.Accept(nodesVisitor),
                        SyntaxFactory.SeparatedList <VariableDeclaratorSyntax>()
                        );
                }
                else
                {
                    stmt = SyntaxFactory.UsingStatement(null, RemodelVariableDeclaration(node.Declaration, nodesVisitor));
                }
                return(SyntaxFactory.SingletonList <StatementSyntax>(SyntaxFactory.UsingBlock(stmt, ConvertBlock(node.Statement))));
            }
示例#2
0
            public override SyntaxList <StatementSyntax> VisitUsingStatement(CSS.UsingStatementSyntax node)
            {
                var stmt = SyntaxFactory.UsingStatement(
                    (ExpressionSyntax)node.Expression?.Accept(nodesVisitor),
                    RemodelVariableDeclaration(node.Declaration, nodesVisitor)
                    );
                SyntaxList <StatementSyntax> list;

                if (node.Statement is CSS.BlockSyntax)
                {
                    var b = (CSS.BlockSyntax)node.Statement;
                    list = SyntaxFactory.List(b.Statements.SelectMany(s => s.Accept(this)));
                }
                else
                {
                    list = node.Statement.Accept(this);
                }
                return(SyntaxFactory.SingletonList <StatementSyntax>(SyntaxFactory.UsingBlock(stmt, list)));
            }
            public override SyntaxList <VB.Syntax.StatementSyntax> VisitUsingStatement(CS.Syntax.UsingStatementSyntax node)
            {
                VB.Syntax.UsingStatementSyntax usingStatement;
                if (node.Expression != null)
                {
                    usingStatement = VB.SyntaxFactory.UsingStatement().WithExpression(
                        nodeVisitor.VisitExpression(node.Expression));
                }
                else
                {
                    usingStatement = VB.SyntaxFactory.UsingStatement().WithVariables(
                        SeparatedCommaList(node.Declaration.Variables.Select(nodeVisitor.Visit <VB.Syntax.VariableDeclaratorSyntax>)));
                }

                return(List <VB.Syntax.StatementSyntax>(
                           VB.SyntaxFactory.UsingBlock(
                               usingStatement,
                               Visit(node.Statement))));
            }