summaryrefslogtreecommitdiffstats
path: root/range.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-08-30 14:49:51 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-08-30 14:49:51 +0000
commitf03a65b72629cb86ffe41576dc837a588c1e8624 (patch)
tree34fedf9739363293313b40fa4509e7f87ef93880 /range.c
parente208ec52edb2c6778d40b1c965bd2aaca0a21217 (diff)
downloadruby-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.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/range.c b/range.c
index 0eb79867b..c146982a6 100644
--- a/range.c
+++ b/range.c
@@ -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);