aboutsummaryrefslogtreecommitdiffstats
path: root/kernel.rb
Commit message (Collapse)AuthorAgeFilesLines
* support builtin for Kernel#FloatS.H2020-04-221-0/+24
| | | | | | | | | | | | | # Iteration per second (i/s) | |compare-ruby|built-ruby| |:------------|-----------:|---------:| |float | 30.395M| 38.314M| | | -| 1.26x| |float_true | 3.833M| 27.322M| | | -| 7.13x| |float_false | 4.182M| 24.938M| | | -| 5.96x|
* Support obj.clone(freeze: true) for freezing cloneJeremy Evans2020-03-221-5/+5
| | | | | | | | | | | | | | | | | | This freezes the clone even if the receiver is not frozen. It is only for consistency with freeze: false not freezing the clone even if the receiver is frozen. Because Object#clone is now partially implemented in Ruby and not fully implemented in C, freeze: nil must be supported to provide the default behavior of only freezing the clone if the receiver is frozen. This requires modifying delegate and set, to set freeze: nil instead of freeze: true as the keyword parameter for initialize_clone. Those are the two libraries in stdlib that override initialize_clone. Implements [Feature #16175]
* support builtin for Kernel#cloneS.H2020-03-171-0/+29