public void VisitForStatement(ForStatementSyntax node) { if (node == null) throw new ArgumentNullException("node"); node.Validate(); WriteLeadingTrivia(node); _writer.WriteIndent(); _writer.WriteKeyword(PrinterKeyword.For); if (_writer.Configuration.Spaces.BeforeParentheses.ForParentheses) _writer.WriteSpace(); _writer.WriteSyntax(Syntax.OpenParen); if (_writer.Configuration.Other.AlignMultiLineConstructs.ForStatementHeader) _writer.SetAlignmentBreak(true); if (_writer.Configuration.Spaces.WithinParentheses.ForParentheses) _writer.WriteSpace(); bool hadOne = false; if (node.Declaration != null) node.Declaration.Accept(this); foreach (var initializer in node.Initializers) { if (hadOne) _writer.WriteListSeparator(); else hadOne = true; initializer.Accept(this); } _writer.WriteStatementSeparator(_writer.Configuration.LineBreaksAndWrapping.LineWrapping.WrapForStatementHeader); if (node.Condition != null) node.Condition.Accept(this); _writer.WriteStatementSeparator(_writer.Configuration.LineBreaksAndWrapping.LineWrapping.WrapForStatementHeader); hadOne = false; foreach (var incrementor in node.Incrementors) { if (hadOne) _writer.WriteListSeparator(); else hadOne = true; incrementor.Accept(this); } if (_writer.Configuration.Spaces.WithinParentheses.ForParentheses) _writer.WriteSpace(); _writer.WriteSyntax(Syntax.CloseParen); if (_writer.Configuration.Other.AlignMultiLineConstructs.ForStatementHeader) _writer.SetAlignmentBreak(false); VisitBlockStatement(node.Statement); WriteTrailingTrivia(node); }