nobu
6343e30c14
* array.c (ary_reject_bang): should not remove elements which are
...
not yielded. [Bug #2545 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-03 04:44:53 +00:00
nobu
e7047b8a37
* array.c (rb_ary_reject_bang, rb_ary_delete_if): rejected
...
elements should be removed. fixed [Bug #2545 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-01 22:17:46 +00:00
naruse
c7d3b3f1b4
* array.c (array_join): copy the encoding of the first element as
...
an initial encoding.
* array.c (array_join_0): ditto.
* array.c (array_join_1): ditto.
* array.c (inspect_ary): ditto.
* array.c (array_join_1): add an argument to check the appending is
first one or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-15 07:08:24 +00:00
naruse
a924b1768f
Add ML Reference and a test for r30736 [ruby-core:34997]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-30 21:00:04 +00:00
naruse
674ea103fa
* array.c (rb_ary_join): [].join.encoding must be US-ASCII.
...
[ruby-list:47790]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-29 15:33:50 +00:00
nobu
0d78d991ca
* test/ruby/test_array.rb (test_rotate!): fix expected message.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-25 00:34:14 +00:00
nobu
5b7ccc0629
* array.c (rb_ary_shuffle_bang): bail out from modification during
...
shuffle.
* array.c (rb_ary_sample): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-26 22:57:39 +00:00
nobu
7e4015e16d
* array.c (rb_ary_shuffle_bang): check number of argument.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-26 00:49:54 +00:00
nobu
8554e16355
* array.c (rb_ary_{shuffle_bang,sample}): use Random class object.
...
* random.c (try_get_rnd): use default_rand for Random as same as
singleton methods.
* random.c (rb_random_real): check the range of result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-25 22:30:03 +00:00
shyouhei
2531892cbc
reverted to r29091; r29092 breaks test-all
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-25 12:14:38 +00:00
nobu
fd1022c065
* random.c (rb_random_real): check the range of result.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-25 09:31:46 +00:00
nobu
2f6c0e3be3
* array.c (rb_ary_shuffle_bang, rb_ary_sample): add optional
...
argument random. [ruby-dev:41923] [EXPERIMENTAL]
* random.c (rb_random_{int32,real,bytes}): fallback to normal
method invocation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 22:07:39 +00:00
mrkn
1d04aedb5a
* array.c (rb_ary_permutation, rb_ary_repeated_permutation, rb_ary_repeated_combination, rb_ary_product): use ary_make_shared_copy instead of ary_make_substitution. [ruby-dev:42067] [Bug #3708 ]
...
* test/ruby/test_array.rb (test_product, test_repeated_permutation, test_repeated_combination): append assertions against [Bug #3708 ].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 03:10:15 +00:00
mrkn
4023ffa92f
* array.c (ary_make_shared), test/ruby/test_array.rb (test_permutation): always return the original array when it is shared. [ruby-dev:42067] [Bug #3708 ]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-18 09:42:36 +00:00
akr
707d22f1dd
add tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-01 21:04:10 +00:00
nobu
0363b91bf6
* test/ruby/test_array.rb (test_product): test for r28187.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-06 13:06:51 +00:00
nobu
c22b223cb0
* array.c (rb_ary_product): need to set the length in order to get
...
the entries marked. [ruby-dev:41540]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-06 01:44:38 +00:00
nobu
e1cc514073
* test/ruby: fixed nonsense assertions.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-29 05:33:43 +00:00
matz
38ae996706
* array.c (rb_ary_repeated_permutation): new method added. a patch
...
from Makoto Kishimoto in [ruby-core:29267] [ruby-core:28724]
* array.c (rb_ary_repeated_combination): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-16 07:24:04 +00:00
marcandre
f3d2f9e4d1
* array.c (rb_ary_permutation): Remove limitation for lengthy permutations
...
[ruby-core:29240]
* test/ruby/test_array.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-07 17:36:15 +00:00
marcandre
93f4317f89
* array.c (rb_ary_product): Don't limit based on size when a block is given
...
cf [ruby-core:29240]
* test/ruby/test_array.rb (class): Test for above
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-03 20:59:56 +00:00
marcandre
d0a98a0e90
* array.c (rb_ary_product): Test for reentry
...
* test/ruby/test_array.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-02 22:25:49 +00:00
akr
4b6a7a46e8
add tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 05:17:19 +00:00
akr
9ce419a45c
* array.c (rb_ary_uniq_bang): the array is already unique if the
...
length is zero or one.
(rb_ary_uniq): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 04:27:32 +00:00
matz
8b55878d2a
* enum.c (enum_join): remove Enumerable#join. [ruby-core:24786]
...
* array.c (ary_join_1): use #to_ary to detect recursive array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-13 05:55:46 +00:00
matz
006a8ba77f
* array.c (rb_ary_select_bang): select! removes all elements for
...
which block returns false. [ruby-core:27286]
* array.c (rb_ary_keep_if): #keep_if, new method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-03 05:35:08 +00:00
nobu
f3f43cdbee
* array.c (rb_ary_push_m, rb_ary_unshift_m, rb_ary_aset),
...
(rb_ary_insert, rb_ary_replace, rb_ary_concat),
(rb_ary_uniq_bang, rb_ary_flatten_bang): check if frozen after
wrong number of arguments but before TypeError.
[ruby-core:28140]
* hash.c (rb_hash_replace): ditto.
* string.c (rb_str_replace): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-10 07:31:06 +00:00
mame
bebd7e4511
* test/ruby/test_array.rb: add a test for Array#rotate, rotate!.
...
* test/ruby/test_dir.rb, test/ruby/test_fnmatch.rb: add some tests
(for coverage of dir.c).
* test/ruby/test_enum.rb: add a test for Enumerable#minmax.
* test/ruby/test_enumerator.rb: add some tests for Enumerator#inspect,
Enumerator::Generator and Yielder.
* test/ruby/test_env.rb: add a test for ENV#index.
* test/ruby/test_exception.rb: add some tests (for coverage of
error.c).
* test/ruby/test_hash.rb: add a test for recursive check.
* test/ruby/test_integer.rb: add a test for number of argument of
Integer.
* test/ruby/test_method.rb: add a test for define_method.
* test/ruby/test_module.rb: add a test for constant of included
module.
* test/ruby/test_proc.rb: add a test for parameters with cfunc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-22 15:03:32 +00:00
nobu
8a4c9b0b77
* array.c (rb_ary_rotate): new methods, Array#rotate! and
...
Array#rotate. [ruby-dev:17194]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-21 02:15:48 +00:00
mame
77f3fc3054
* test/ruby/test_array.rb: add some tests (for coverage).
...
* test/ruby/test_bignum.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-18 17:03:16 +00:00
naruse
c5b4aedab6
Decrease counts of tests which spend so long time.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-04 19:01:41 +00:00
nobu
35b88be02b
* vm_eval.c (rb_search_method_emtry, rb_method_call_status): split
...
from rb_call0().
* vm_eval.c (rb_check_funcall): get rid of raising exceptions and
hiding further exceptions. [ruby-dev:39584]
* vm_eval.c (rb_funcall_no_recursive): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-30 07:42:04 +00:00
marcandre
1796522f10
* thread.c (rb_exec_recursive_outer, rb_exec_recursive): Added method to short-circuit to the outermost level in case of recursion
...
* test/ruby/test_thread.rb (test_recursive_outer): Test for above
* hash.c (rb_hash_hash): Return a sensible hash for in case of recursion [ruby-core:24648]
* range.c (rb_range_hash): ditto
* struct.c (rb_struct_hash): ditto
* array.c (rb_array_hash): ditto
* test/ruby/test_array.rb (test_hash2): test for above
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-15 21:30:50 +00:00
akr
0101958745
* array.c (recursive_hash): reject recursive key.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-17 07:49:06 +00:00
matz
ae487eda6e
* array.c (recursive_join): raise ArgumentError for joining
...
recursive array.
* array.c (ary_join_1): ditto.
* test/ruby/test_array.rb (TestArray#test_join2): test updated for
recursive join.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-17 02:04:37 +00:00
nobu
38867cc115
* array.c (ary_join_1): should recurse for element array.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-10 15:11:43 +00:00
nobu
5d8b373b05
* test/ruby/test_array.rb (test_join2): fixed typo.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-10 11:41:27 +00:00
nobu
af8f8e5b0e
* array.c (recursive_join): use obj to tell if recursion occurs.
...
[ruby-core:24150]
* enum.c (enum_join): reverted r23966. [ruby-core:24196]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-10 07:30:08 +00:00
nobu
94ee3e7e02
* array.c (rb_ary_flatten_bang): returns nil if nothing changed.
...
a patch from Marc-Andre Lafortune in [ruby-core:23382].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-07 07:40:11 +00:00
nobu
9936642c40
* array.c (rb_ary_sample): negative sample number is invalid.
...
[ruby-core:23374]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-07 05:26:16 +00:00
mame
bded3bb726
* array.c (rb_ary_flatten): flatten(0) works as Array#dup.
...
[ruby-core:23168]
* test/ruby/test_array.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-15 11:47:54 +00:00
nobu
287a34ae0d
* {ext,lib,test}/**/*.rb: removed trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
mame
0da23f4b5b
* test/ruby/test_array.rb: fix wrong test, and add a test for
...
sort_by!.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-04 19:43:35 +00:00
mame
6273951869
* test/ruby/test_array.rb: add some tests for coverage.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-04 19:33:14 +00:00
nobu
766df600db
* array.c (rb_ary_uniq_bang, rb_ary_uniq): unique by the result of
...
given block. [ruby-dev:37998]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-14 15:45:43 +00:00
usa
6ff613fc09
* array.c (take_items): to_ary() raises ArgumentError if cannot to
...
convert to Array. [ruby-dev:37797]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-21 05:43:04 +00:00
nobu
cab67c3197
* array.c (take_items), enum.c (enum_zip): tries to convert to
...
array first. [ruby-core:21442]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-19 21:47:48 +00:00
yugui
7ac0beaeea
* test/ruby/test_array.rb (test_array_subclass) test for r20076.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-31 09:57:45 +00:00
mame
e2cb0b9766
* array.c (rb_ary_sort_bang): remove SEGV when replacing array with
...
embedded one during sort.
* test/ruby/test_array.rb (test_sort!): add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-29 17:24:44 +00:00
mame
143f059bcd
* test/ruby/test_array.rb: add some tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-29 16:46:08 +00:00