diff options
author | ocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-09-12 10:44:21 +0000 |
---|---|---|
committer | ocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-09-12 10:44:21 +0000 |
commit | dda5dc00cff334cac373096d444a0fd59e716124 (patch) | |
tree | d9ab9c1dc4cede235a3bbaea653c07f38ea880b9 /enumerator.c | |
parent | 51e25545aeb1555051b95c5b31b4f3ca6ec6b6fe (diff) | |
download | ruby-dda5dc00cff334cac373096d444a0fd59e716124.tar.gz |
* array.c: moved to ANSI function style from K&R function style.
(used protoize on windows, so still K&R remains on #ifdef part of
other platforms. And `foo _((boo))' stuff is still there)
[ruby-dev:26975]
* bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
version.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enumerator.c')
-rw-r--r-- | enumerator.c | 80 |
1 files changed, 22 insertions, 58 deletions
diff --git a/enumerator.c b/enumerator.c index c5bb86dd2f..cc8adf5235 100644 --- a/enumerator.c +++ b/enumerator.c @@ -24,8 +24,7 @@ static VALUE rb_cEnumerator; static VALUE sym_each, sym_each_with_index, sym_each_slice, sym_each_cons; static VALUE -proc_call(proc, args) - VALUE proc, args; +proc_call(VALUE proc, VALUE args) { if (TYPE(args) != T_ARRAY) { args = rb_values_new(1, args); @@ -34,8 +33,7 @@ proc_call(proc, args) } static VALUE -method_call(method, args) - VALUE method, args; +method_call(VALUE method, VALUE args) { int argc = 0; VALUE *argv = 0; @@ -53,10 +51,8 @@ struct enumerator { VALUE (*iter)_((VALUE, struct enumerator *)); }; -static void enumerator_mark _((void *)); static void -enumerator_mark(p) - void *p; +enumerator_mark(void *p) { struct enumerator *ptr = p; rb_gc_mark(ptr->method); @@ -65,8 +61,7 @@ enumerator_mark(p) } static struct enumerator * -enumerator_ptr(obj) - VALUE obj; +enumerator_ptr(VALUE obj) { struct enumerator *ptr; @@ -82,11 +77,8 @@ enumerator_ptr(obj) return ptr; } -static VALUE enumerator_iter_i _((VALUE, struct enumerator *)); static VALUE -enumerator_iter_i(i, e) - VALUE i; - struct enumerator *e; +enumerator_iter_i(VALUE i, struct enumerator *e) { return rb_yield(proc_call(e->proc, i)); } @@ -110,10 +102,7 @@ enumerator_iter_i(i, e) * */ static VALUE -obj_to_enum(argc, argv, obj) - int argc; - VALUE *argv; - VALUE obj; +obj_to_enum(int argc, VALUE *argv, VALUE obj) { VALUE meth = sym_each; @@ -132,16 +121,13 @@ obj_to_enum(argc, argv, obj) * */ static VALUE -enumerator_enum_with_index(obj) - VALUE obj; +enumerator_enum_with_index(VALUE obj) { return rb_enumeratorize(obj, sym_each_with_index, 0, 0); } static VALUE -each_slice_i(val, memo) - VALUE val; - VALUE *memo; +each_slice_i(VALUE val, VALUE *memo) { VALUE ary = memo[0]; long size = (long)memo[1]; @@ -172,8 +158,7 @@ each_slice_i(val, memo) * */ static VALUE -enum_each_slice(obj, n) - VALUE obj, n; +enum_each_slice(VALUE obj, VALUE n) { long size = NUM2LONG(n); VALUE args[2], ary; @@ -199,16 +184,13 @@ enum_each_slice(obj, n) * */ static VALUE -enumerator_enum_slice(obj, n) - VALUE obj, n; +enumerator_enum_slice(VALUE obj, VALUE n) { return rb_enumeratorize(obj, sym_each_slice, 1, &n); } static VALUE -each_cons_i(val, memo) - VALUE val; - VALUE *memo; +each_cons_i(VALUE val, VALUE *memo) { VALUE ary = memo[0]; long size = (long)memo[1]; @@ -244,8 +226,7 @@ each_cons_i(val, memo) * */ static VALUE -enum_each_cons(obj, n) - VALUE obj, n; +enum_each_cons(VALUE obj, VALUE n) { long size = NUM2LONG(n); VALUE args[2]; @@ -267,16 +248,13 @@ enum_each_cons(obj, n) * */ static VALUE -enumerator_enum_cons(obj, n) - VALUE obj, n; +enumerator_enum_cons(VALUE obj, VALUE n) { return rb_enumeratorize(obj, sym_each_cons, 1, &n); } -static VALUE enumerator_allocate _((VALUE)); static VALUE -enumerator_allocate(klass) - VALUE klass; +enumerator_allocate(VALUE klass) { struct enumerator *ptr; return Data_Make_Struct(rb_cEnumerator, struct enumerator, @@ -284,10 +262,7 @@ enumerator_allocate(klass) } VALUE -enumerator_init(enum_obj, obj, meth, argc, argv) - VALUE enum_obj, obj, meth; - int argc; - VALUE *argv; +enumerator_init(VALUE enum_obj, VALUE obj, VALUE meth, int argc, VALUE *argv) { struct enumerator *ptr = enumerator_ptr(enum_obj); @@ -320,10 +295,7 @@ enumerator_init(enum_obj, obj, meth, argc, argv) * */ static VALUE -enumerator_initialize(argc, argv, obj) - int argc; - VALUE *argv; - VALUE obj; +enumerator_initialize(int argc, VALUE *argv, VALUE obj) { VALUE recv, meth = sym_each; @@ -338,18 +310,13 @@ enumerator_initialize(argc, argv, obj) } VALUE -rb_enumeratorize(obj, meth, argc, argv) - VALUE obj, meth; - int argc; - VALUE *argv; +rb_enumeratorize(VALUE obj, VALUE meth, int argc, VALUE *argv) { return enumerator_init(enumerator_allocate(rb_cEnumerator), obj, meth, argc, argv); } -static VALUE enumerator_iter _((VALUE)); static VALUE -enumerator_iter(memo) - VALUE memo; +enumerator_iter(VALUE memo) { struct enumerator *e = (struct enumerator *)memo; @@ -365,8 +332,7 @@ enumerator_iter(memo) * */ static VALUE -enumerator_each(obj) - VALUE obj; +enumerator_each(VALUE obj) { struct enumerator *e = enumerator_ptr(obj); @@ -374,8 +340,7 @@ enumerator_each(obj) } static VALUE -enumerator_with_index_i(val, memo) - VALUE val, *memo; +enumerator_with_index_i(VALUE val, VALUE *memo) { val = rb_yield_values(2, val, INT2FIX(*memo)); ++*memo; @@ -391,8 +356,7 @@ enumerator_with_index_i(val, memo) * */ static VALUE -enumerator_with_index(obj) - VALUE obj; +enumerator_with_index(VALUE obj) { struct enumerator *e = enumerator_ptr(obj); VALUE memo = 0; @@ -402,7 +366,7 @@ enumerator_with_index(obj) } void -Init_Enumerator() +Init_Enumerator(void) { rb_define_method(rb_mKernel, "to_enum", obj_to_enum, -1); rb_define_method(rb_mKernel, "enum_for", obj_to_enum, -1); |