diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-08-27 08:56:41 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-08-27 08:56:41 +0900 |
| commit | fd927d786eee1ecde94d9a791036c07543340e7b (patch) | |
| tree | 1874af71ff598308afbd8f1110bd5ebdcf6f445c /mrblib/array.rb | |
| parent | ccd555421a0e98ecb07226a47910dc14524acec0 (diff) | |
| parent | c956e17c02d890ed96f640504f57eae0495f1f75 (diff) | |
| download | mruby-fd927d786eee1ecde94d9a791036c07543340e7b.tar.gz mruby-fd927d786eee1ecde94d9a791036c07543340e7b.zip | |
Merge pull request #3795 from christopheraue/array_refactoring
Array refactorings and speed improvements
Diffstat (limited to 'mrblib/array.rb')
| -rw-r--r-- | mrblib/array.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/mrblib/array.rb b/mrblib/array.rb index 5b9ee47c0..a75ed6223 100644 --- a/mrblib/array.rb +++ b/mrblib/array.rb @@ -46,7 +46,12 @@ class Array def collect!(&block) return to_enum :collect! unless block - self.each_index { |idx| self[idx] = block.call(self[idx]) } + idx = 0 + len = size + while idx < len + self[idx] = block.call self[idx] + idx += 1 + end self end |
