From 8481c848da553c3f2822e9f24407f3a23118d129 Mon Sep 17 00:00:00 2001 From: nobu Date: Sun, 11 May 2008 14:19:41 +0000 Subject: [PATCH] * enum.c (all_iter_i, any_iter_i): reduced duplicated code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ enum.c | 32 ++++++++++++-------------------- 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index 81f30b2c18..460564b5f7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun May 11 23:19:39 2008 Nobuyoshi Nakada + + * enum.c (all_iter_i, any_iter_i): reduced duplicated code. + Sun May 11 22:54:02 2008 Nobuyoshi Nakada * bootstraptest/runner.rb (main): leave -I options for purelib.rb diff --git a/enum.c b/enum.c index d567c1c388..73c1a24734 100644 --- a/enum.c +++ b/enum.c @@ -761,16 +761,6 @@ enum_sort_by(VALUE obj) return ary; } -static VALUE -all_iter_i(VALUE i, VALUE *memo) -{ - if (!RTEST(rb_yield(i))) { - *memo = Qfalse; - rb_iter_break(); - } - return Qnil; -} - static VALUE all_i(VALUE i, VALUE *memo) { @@ -781,6 +771,12 @@ all_i(VALUE i, VALUE *memo) return Qnil; } +static VALUE +all_iter_i(VALUE i, VALUE *memo) +{ + return all_i(rb_yield(i), memo); +} + /* * call-seq: * enum.all? [{|obj| block } ] => true or false @@ -807,16 +803,6 @@ enum_all(VALUE obj) return result; } -static VALUE -any_iter_i(VALUE i, VALUE *memo) -{ - if (RTEST(rb_yield(i))) { - *memo = Qtrue; - rb_iter_break(); - } - return Qnil; -} - static VALUE any_i(VALUE i, VALUE *memo) { @@ -827,6 +813,12 @@ any_i(VALUE i, VALUE *memo) return Qnil; } +static VALUE +any_iter_i(VALUE i, VALUE *memo) +{ + return any_i(rb_yield(i), memo); +} + /* * call-seq: * enum.any? [{|obj| block } ] => true or false