aboutsummaryrefslogtreecommitdiffstats
path: root/intern.h
diff options
context:
space:
mode:
Diffstat (limited to 'intern.h')
-rw-r--r--intern.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/intern.h b/intern.h
index 338eacd039..70e243629d 100644
--- a/intern.h
+++ b/intern.h
@@ -143,6 +143,11 @@ NORETURN(void rb_cmperr _((VALUE, VALUE)));
/* enum.c */
/* enumerator.c */
VALUE rb_enumeratorize _((VALUE, VALUE, int, VALUE *));
+#define RETURN_ENUMERATOR(obj, argc, argv) do { \
+ if (!rb_block_given_p()) \
+ return rb_enumeratorize(obj, ID2SYM(rb_frame_this_func()), \
+ argc, argv); \
+ } while (0)
/* error.c */
RUBY_EXTERN int ruby_nerrs;
VALUE rb_exc_new _((VALUE, const char*, long));