public static IterateNode Iterate(ExpressionNode collectionExpression, SourceLocation location, BlockNode body, BlockNode emptyBody = null) { return new IterateNode { Location = location, Collection = collectionExpression, Body = body, EmptyBody = emptyBody ?? SyntaxTree.Block(location) }; }