44 Commits

Author SHA1 Message Date
Tomasz Dąbrowski e65fa4d7a2 implement Array.transpose 2017-11-17 12:39:34 +01:00
Yukihiro "Matz" Matsumoto 0c3ee0ba66 Add `Array#{permutation,combination}. 2017-10-20 10:38:58 +09:00
Christopher Aue c956e17c02 Replaced Array#each with while loop for performance reasons
Example benchmark:
$ time build/bench/bin/mruby -e "Array.new(2_000_000){ |i| i }.index{ |i| i == 1_999_999 }"

Before:
real    0m0.934s
user    0m0.922s
sys     0m0.003s

After:
real    0m0.590s
user    0m0.583s
sys     0m0.007s
2017-08-26 15:57:25 +02:00
Christopher Aue 6c9013e22b Removed unneeded block check in Array#uniq 2017-08-26 15:57:25 +02:00
Christopher Aue f3fb43c729 Reimplemented Array#flatten with #flatten! 2017-08-26 15:57:25 +02:00
Christopher Aue 3359b86ec7 Improved speed of enumeration methods 2017-07-30 13:19:31 +02:00
Christopher Aue a3bfd735a0 Added Array#bsearch_index 2017-07-28 23:51:49 +02:00
Christopher Aue 451574f142 Refactored Array#bsearch 2017-07-28 23:51:40 +02:00
Lukas Elmer f02694ecc7 Update documentation of fetch
The sentence `Negative values of +index+ count from the end of the array.` can be interpreted that it only holds if a block is given. Clarify it.
2016-11-02 19:45:43 +01:00
Yukihiro "Matz" Matsumoto daf83946bb add #dig to Array,Hash and Struct 2016-03-23 11:49:28 +09:00
takahashim 621487a0cd add {Array|Hash|String}.try_convert 2015-11-24 08:39:39 +09:00
Yukihiro "Matz" Matsumoto fafe86d364 Array#index to take block; fix #2968 close #2970 2015-10-01 22:35:06 +09:00
INOUE Yasuyuki 0d055559f1 Use #nil? instead of == nil. 2015-08-22 19:57:11 +09:00
Jun Hiroe 1aa885fae0 Delete unused variable in Array#delete_if 2014-05-03 01:41:41 +09:00
Nobuyoshi Nakada ab67c57f65 remove trailing spaces 2014-04-30 09:50:14 +09:00
Utkarsh Kukreti 6e9a088efb Speed up Array#select! from O(n^2) to O(n). 2014-04-28 12:14:15 +05:30
Jun Hiroe cdef46e3d9 Add Array#select_bang 2014-04-27 23:34:24 +09:00
Jun Hiroe d6414fe112 Add Array#keep_if 2014-04-25 18:57:20 +09:00
Yukihiro "Matz" Matsumoto 49abcd4c02 resolve conflict 2014-04-25 04:43:10 +09:00
Jun Hiroe d4bec4d657 Add Array#delete_if 2014-04-24 23:04:46 +09:00
ksss 4652c7caa0 Array#fill use kind_of? instead of respond_to? 2014-04-24 21:08:49 +09:00
ksss f961d7abeb Array#fill fix bug when argument use range object 2014-04-24 21:08:49 +09:00
Jun Hiroe c81b9838bb Add Array#bsearch 2014-04-24 21:04:13 +09:00
Yukihiro "Matz" Matsumoto 68027317b0 Array#insert: simpler (and faster) implementation; ref #2107 2014-04-23 00:25:50 +09:00
Jun Hiroe a48e0018fd Add Array#insert 2014-04-23 00:22:24 +09:00
Jun Hiroe fcfab84560 Add Array#reject_bang 2014-04-21 13:52:50 +09:00
Jun Hiroe 931414305a Add Array#delete_if 2014-04-21 01:40:39 +09:00
Jun Hiroe cb5e6edb7f Add a block argument with Array#uniq 2014-04-18 23:13:10 +09:00
Jun Hiroe 80646a7890 Add a block argument with Array#uniq_bang 2014-04-18 23:13:02 +09:00
Jun Hiroe 0898f40ccc Add Array#rotate_bang 2014-04-12 01:19:44 +09:00
Jun Hiroe 7ed47c1223 Array#rotate 2014-04-11 23:42:40 +09:00
Kazuki Tsujimoto 01a798362f Fix method name 2014-03-30 18:32:19 +09:00
Jun Hiroe aa4a18e81e Add Array#fill 2014-03-29 20:22:07 +09:00
Yukihiro "Matz" Matsumoto 7d413b7043 Merge branch 'master' of github.com:mruby/mruby 2014-03-28 23:21:42 +09:00
Yukihiro "Matz" Matsumoto 97f22c9516 Array#reverse_each should return Enumerator; ref #1968 2014-03-28 23:18:55 +09:00
Jun Hiroe de573e57a0 Add Array#fetch 2014-03-28 20:28:14 +09:00
Yukihiro "Matz" Matsumoto c326ab877e improve Enumerable#reverse_each to be efficient 2014-03-24 18:39:06 +09:00
Yukihiro "Matz" Matsumoto 5346bdd76b move range aware aget to array.c from mruby-array-ext gem 2014-01-29 14:53:38 +09:00
Paolo Bosetti 921e6e24f4 Added rewrite of Array#[] to mruby-array-ext gem, so that arrays can be sliced
with Ranges (as a[1..-2])
2014-01-10 11:13:47 +01:00
skandhas ad638fc12a add comments for mruby-array-ext 2013-05-14 16:28:14 +08:00
Yukihiro "Matz" Matsumoto 78b0abcfaf string interpolation (#{foo}) does stringify implicitly; no need to call #to_s 2013-04-11 23:11:43 +09:00
h2so5 1f571dd5fc Fix TypeError messages 2013-04-11 19:47:35 +09:00
Yukihiro Matz Matsumoto 5717994452 Array bang methods should return nil if no change happen 2013-03-23 10:54:09 +09:00
Kouki Ooyatsu 0f61d1d6b7 add method(uniq, -, |, &, flatten, compact) and test of Array to mruby-array-ext 2013-03-22 16:45:12 +09:00