protected virtual SqlStatement VisitWhileLoop(WhileLoopStatement statement) { var loop = new WhileLoopStatement(statement.ConditionExpression); foreach (var child in statement.Statements) { loop.Statements.Add(VisitStatement(child)); } return loop; }