From 727024fbac6ac97a3c4236583e5819d72a1513b7 Mon Sep 17 00:00:00 2001 From: marcandre Date: Tue, 6 Nov 2012 17:12:20 +0000 Subject: * vm_eval.c (rb_f_loop): Support for loop.size [Feature #6636] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_eval.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'vm_eval.c') diff --git a/vm_eval.c b/vm_eval.c index 756e49bdf4..8536282ebf 100644 --- a/vm_eval.c +++ b/vm_eval.c @@ -920,6 +920,11 @@ loop_i(void) return Qnil; } +static VALUE +rb_f_loop_size(VALUE self, VALUE args) { + return DBL2NUM(INFINITY); +} + /* * call-seq: * loop { block } @@ -942,7 +947,7 @@ loop_i(void) static VALUE rb_f_loop(VALUE self) { - RETURN_ENUMERATOR(self, 0, 0); + RETURN_SIZED_ENUMERATOR(self, 0, 0, rb_f_loop_size); rb_rescue2(loop_i, (VALUE)0, 0, 0, rb_eStopIteration, (VALUE)0); return Qnil; /* dummy */ } -- cgit v1.2.3