tfpt review /shelveset:Various5;REDMOND\tomat
Reviewed F2F by Dino and John.
- Implements $KCODE global variable.
- Implements ToString() and ToByteArray() methods on MutableString -
they create a copy of the content converted to System.String or byte[]
preserving the content representation.
- Fixes bug #19309: double should be parsed using an invariant culture
- Fixes bug #19867: $0 and $: not initialized correctly - initializes
$0.
- Fixes bug #15982: re-opening the class "Class" need
update version?
* Incorrect tests were emitted when dispatching on modules/classes
- Makes method dispatch multi-runtime safe (the missing check caused
sharing of the rule across runtimes)
- Improves and fixes bugs in MutableString construction from literals
and by concatenation of embedded expressions ("foo #{x} bar"):
* to_s string conversion protocol needs to be applied
* "#{x}" was broken - to_s wasn''t called on x
* Optimizes concatenation:
* Where possible the compiler performs the concatenation (like x =
"foo" "bar").
* Special-cases concatenation helpers for all combinations of at most
two literal and variable arguments.
* Some more optimizations are still possible.
- Implements Regex#to_s, Regex#inspect, Regex#options
* Fixes bug #19756: Regular expression substitution
- Changes instantiation of Ruby classes defined in libraries
* C.new doesn''t invoke "initialize" method anymore if
C is a library class.
* "initialize" can therefore be invoked only via send, from
subclasses (directly or using super) and when instantiating a subclass that has
no "initialize" method. In these cases the call is reinitializing an
existing object.
- Fixes one of the Array#initialize overloads
* This didn''t work previously: Array.new(class C; def to_int;
5; end; self; end.new) { ''foo'' }
- Implements parameterless Proc#new
* This overload searches the lexical scope chain for a method scope and
picks its block parameter.
- Fixes #19805: Wrong number of type of arguments for Class
* Implements Class constructor that creates an anonymous class
- Fixes #19953: class_eval adds methods to the wrong class
- Fixes EqualityComparer: it shouldn''t call
''eql?'' if the values being compared are reference-equal.
- Refactors Struct#new and fixes some issues there.
- Fixes some specs.
Tomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://rubyforge.org/pipermail/ironruby-core/attachments/20080514/56f15a40/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Various5.diff
Type: application/octet-stream
Size: 221585 bytes
Desc: Various5.diff
URL:
<http://rubyforge.org/pipermail/ironruby-core/attachments/20080514/56f15a40/attachment-0001.obj>