diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-08-30 14:49:51 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-08-30 14:49:51 +0000 |
commit | f03a65b72629cb86ffe41576dc837a588c1e8624 (patch) | |
tree | 34fedf9739363293313b40fa4509e7f87ef93880 /range.c | |
parent | e208ec52edb2c6778d40b1c965bd2aaca0a21217 (diff) | |
download | ruby-f03a65b72629cb86ffe41576dc837a588c1e8624.tar.gz ruby-f03a65b72629cb86ffe41576dc837a588c1e8624.tar.xz ruby-f03a65b72629cb86ffe41576dc837a588c1e8624.zip |
* array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
let enumerable methods return Enumerator. [ruby-dev:26924]
* intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@9053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'range.c')
-rw-r--r-- | range.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -303,6 +303,8 @@ range_step(argc, argv, range) VALUE b, e, step; long unit; + RETURN_ENUMERATOR(range, argc, argv); + b = rb_ivar_get(range, id_beg); e = rb_ivar_get(range, id_end); if (rb_scan_args(argc, argv, "01", &step) == 0) { @@ -392,6 +394,8 @@ range_each(range) { VALUE beg, end; + RETURN_ENUMERATOR(range, 0, 0); + beg = rb_ivar_get(range, id_beg); end = rb_ivar_get(range, id_end); |