diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2019-07-08 18:50:28 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-07-08 18:50:28 +0900 |
| commit | fd4e37404b4c37fff429d8e16f7e992f1dde4ac7 (patch) | |
| tree | dad168c0117cd9df47112a2b19a53112726db2be /mrblib | |
| parent | 519f3963654d01ddc0c810cda1c5be365bc21f87 (diff) | |
| parent | 32c2aa10c79e37c53411b1d693c6c8d010fba7bb (diff) | |
| download | mruby-fd4e37404b4c37fff429d8e16f7e992f1dde4ac7.tar.gz mruby-fd4e37404b4c37fff429d8e16f7e992f1dde4ac7.zip | |
Merge pull request #4557 from shuujii/fix-Numeric-step-to-infinity
Fix `Numeric#step` to infinity; ref. #4555
Diffstat (limited to 'mrblib')
| -rw-r--r-- | mrblib/numeric.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/mrblib/numeric.rb b/mrblib/numeric.rb index 5a3c5eb58..5926518d5 100644 --- a/mrblib/numeric.rb +++ b/mrblib/numeric.rb @@ -105,14 +105,14 @@ module Integral return to_enum(:step, num, step) unless block i = __coerce_step_counter(num, step) - if num == nil + if num == self || step.infinite? + block.call(i) if step > 0 && i <= (num||i) || step < 0 && i >= (num||-i) + elsif num == nil while true block.call(i) i += step end - return self - end - if step > 0 + elsif step > 0 while i <= num block.call(i) i += step |
