[macruby-changes] [1775] MacRuby/branches/experimental/array.c
source_changes at macosforge.org
source_changes at macosforge.org
Fri Jun 5 22:06:59 PDT 2009
Revision: 1775
http://trac.macosforge.org/projects/ruby/changeset/1775
Author: lsansonetti at apple.com
Date: 2009-06-05 22:06:59 -0700 (Fri, 05 Jun 2009)
Log Message:
-----------
Array#zip: try to convert the given argument as an array
Modified Paths:
--------------
MacRuby/branches/experimental/array.c
Modified: MacRuby/branches/experimental/array.c
===================================================================
--- MacRuby/branches/experimental/array.c 2009-06-06 05:02:44 UTC (rev 1774)
+++ MacRuby/branches/experimental/array.c 2009-06-06 05:06:59 UTC (rev 1775)
@@ -2020,11 +2020,18 @@
static VALUE
take_items(VALUE obj, long n)
{
- VALUE result = rb_ary_new2(n);
+ VALUE result = rb_check_array_type(obj);
VALUE args[2];
- args[0] = result; args[1] = (VALUE)n;
+ if (!NIL_P(result)) {
+ return rb_ary_subseq(result, 0, n);
+ }
+ result = rb_ary_new2(n);
+ args[0] = result;
+ args[1] = (VALUE)n;
+
rb_objc_block_call(obj, selEach, cacheEach, 0, 0, take_i, (VALUE)args);
+
return result;
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090605/ee6d92b5/attachment.html>
More information about the macruby-changes
mailing list