tfpt review "/shelveset:AstImprovements;REDMOND\tomat" Comment : DLR: Adds ExpressionCollectionBuilder (moves the implementation from IronRuby). This allows to construct optimized expressions via C# initializer syntax. Adds a subclass BlockBuilder that can be used to build blocks like so: Expression result = new BlockBuilder { expression1, ... (condition) ? foo : null, anotherExpression }; If the expression used in the initializer is null it is skipped. If the expression is a sequence of expressions (IEnumerable<Expression>) its content is included in the block. BlockBuilder defines an implicit conversion to Expression. Ruby: Tree transformation refactorings: - Replaces some AstFactory utility methods with AstUtils equivalents. - Creates Lambda<T> explicitly to avoid calls to MakeGenericType. - Uses BlockBuilder for building complex blocks. Tomas -------------- next part -------------- A non-text attachment was scrubbed... Name: AstImprovements.diff Type: application/octet-stream Size: 84549 bytes Desc: AstImprovements.diff URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20091209/878c6c53/attachment-0001.obj>