aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_arithmetic_sequence.rb
Commit message (Collapse)AuthorAgeFilesLines
* enumerator.c: force hash values fixablenobu2019-04-081-0/+1
| | | | | | | * enumerator.c (arith_seq_hash): force hash values fixable on LLP64 environment. [ruby-core:92190] [Bug #15755] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: make arith_seq_first support nil beginmrkn2019-04-041-0/+10
| | | | | | | | | * enumerator.c: (arith_seq_first): support nil begin. * test/ruby/test_arithmetic_sequence.rb (test_first): add assertions for beginless and endless arithmetic sequences. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby/test_arithmetic_sequence.rb: add assertions for beginless and endless ↵mrkn2019-04-041-0/+20
| | | | | | ranges git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: fix arith_seq_first for Infinitymrkn2019-01-301-0/+19
| | | | | | | | | | | | | | * enumerator.c (arith_seq_first): fix for Float::INFINITY. * test/ruby/test_arithmetic_sequence.rb: add tests. * numeric.c (ruby_float_step_size): export for internal use. * internal.h: add prototype declaration of ruby_float_step_size. [ruby-core:90937][Bug #15518] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add test case of ArithmeticSequence#summrkn2018-12-231-0/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: Fix airth_seq_each for Rationalmrkn2018-12-211-0/+14
| | | | | | | | Fix the wrong uses of rb_int_ge in arith_seq_each. [ruby-core:90648] [Bug #15444] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: Fix ArithmeticSequence for complex stepmrkn2018-09-121-0/+20
| | | | | | | | | Make sure Enumerator::ArithmeticSequence#each to work well for a complex step value. This reverts commit ca47fb329a1d48af3e1009620bdb18e931c9f188. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert "enumerator.c: Fix ArithmeticSequence for complex step"mrkn2018-09-121-20/+0
| | | | | | This reverts commit 0a0f8238d02a2dfff4cd2892408e14cb826cec7e. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: Fix ArithmeticSequence for complex stepmrkn2018-09-121-0/+20
| | | | | | | Make sure Enumerator::ArithmeticSequence#each to work well for a complex step value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: fix for non-integral argument for ArithmeticSequence#lastmrkn2018-08-101-0/+24
| | | | | | | This fixes a bug of Enumerator::ArithmeticSequence#last in the case that a non-integral argument is passed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: undef new and allocate of ArithmeticSequencemrkn2018-08-091-0/+8
| | | | | | | | Undefine new and allocate methods of Enumerator::ArithmeticSequence. [ruby-core:82816] [Feature #13904] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enumerator.c: Introduce Enumerator::ArithmeticSequencemrkn2018-08-061-0/+367
This commit introduces new core class Enumerator::ArithmeticSequence. Enumerator::ArithmeticSequence is a subclass of Enumerator, and represents a number generator of an arithmetic sequence. After this commit, Numeric#step and Range#step without blocks returned an ArithmeticSequence object instead of an Enumerator. This class introduces the following incompatibilities: - You can create a zero-step ArithmeticSequence, and its size is not ArgumentError, but Infinity. - You can create a negative-step ArithmeticSequence from a range. [ruby-core:82816] [Feature #13904] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e