/// <summary>Called when the visitor visits a BlockSyntax node.</summary>
 public override SyntaxNode VisitBlock(BlockSyntax node)
 {
     using (Tab())
     {
         var r = base.VisitBlock(node) as BlockSyntax;
         r = r.WithLeadingTrivia(Tabs.BrTabs_Prev())
             .WithCloseBraceToken(Token(SyntaxKind.CloseBraceToken).WithLeadingTrivia(Tabs.BrTabs_Prev()));
         return(r);
     }
 }
        /// <summary>Called when the visitor visits a ArgumentListSyntax node.</summary>
        public override SyntaxNode VisitArgumentList(ArgumentListSyntax node)
        {
            if (node.ContainsAnnotations && node.HasAnnotation(Annotations.ThenArgument))
            {
                using (Tab())
                {
                    var r = base.VisitArgumentList(node) as ArgumentListSyntax;

                    return(r
                           .WithCloseParenToken(Token(SyntaxKind.CloseParenToken).WithLeadingTrivia(Tabs.BrTabs_Prev()))
                           .WithOpenParenToken(Token(SyntaxKind.OpenParenToken).WithLeadingTrivia(Tabs.BrTabs_Prev()))
                           );
                }
            }
            return(base.VisitArgumentList(node));
        }
 /// <summary>Called when the visitor visits a NamespaceDeclarationSyntax node.</summary>
 public override SyntaxNode VisitNamespaceDeclaration(NamespaceDeclarationSyntax node)
 {
     using (Tab())
     {
         var r = base.VisitNamespaceDeclaration(node) as NamespaceDeclarationSyntax;
         r = r.WithoutTrivia().WithLeadingTrivia(LineFeed);
         r = r.WithOpenBraceToken(Token(SyntaxKind.OpenBraceToken).WithLeadingTrivia(Tabs.BrTabs_Prev()))
             .WithCloseBraceToken(Token(SyntaxKind.CloseBraceToken).WithLeadingTrivia(Tabs.BrTabs_Prev()));
         return(r);
     }
 }
        /// <summary>Called when the visitor visits a InitializerExpressionSyntax node.</summary>
        public override SyntaxNode VisitInitializerExpression(InitializerExpressionSyntax node)
        {
            using (Tab())
            {
                var r = base.VisitInitializerExpression(node) as InitializerExpressionSyntax;
                if (r.IsKind(SyntaxKind.ObjectInitializerExpression))
                {
                    var ex = r.Expressions.Select(x => x.WithoutTrivia().WithLeadingTrivia(Tabs.BrTabs())).ToArray();
                    r = r.WithExpressions(SeparatedList <ExpressionSyntax>(ex)).WithCloseBraceToken(Token(SyntaxKind.CloseBraceToken).WithLeadingTrivia(Tabs.BrTabs_Prev()));
                }

                if (r.IsKind(SyntaxKind.CollectionInitializerExpression))
                {
                    var ex = r.Expressions.Select(x => x.WithoutTrivia().WithLeadingTrivia(Tabs.BrTabs())).ToArray();
                    r = r.WithExpressions(SeparatedList <ExpressionSyntax>(ex)).WithCloseBraceToken(Token(SyntaxKind.CloseBraceToken).WithLeadingTrivia(Tabs.BrTabs_Prev()));
                }

                return(r);
            }
        }