diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-02-03 09:15:42 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-02-03 09:15:42 +0000 |
commit | 5675cdbd418509bdb1abbc4442a681b808ed35e8 (patch) | |
tree | d731ff563b61a1983f234474bb3f72d190e8f91f /ext/sdbm | |
parent | e4f1feac3e807e2e3790237749cfdb7a6104fd90 (diff) |
* eval.c: unify ruby_class (for method definition) and ruby_cbase
(for constant reference).
* eval.c (rb_call0): use TMP_ALLOC() instead of allocating
a temporary array object.
* eval.c (eval): need not to protect $SAFE value.
[ruby-core:07177]
* error.c (Init_Exception): change NameError to direct subclass of
Exception so that default rescue do not handle it silently.
* struct.c (rb_struct_select): update RDoc description.
[ruby-core:7254]
* numeric.c (int_upto): return an enumerator if no block is
attached to the method.
* numeric.c (int_downto): ditto.
* numeric.c (int_dotimes): ditto.
* enum.c (enum_first): new method Enumerable#first to take first n
element from an enumerable.
* enum.c (enum_group_by): new method Enumerable#group_by that
groups enumerable values according to their block values.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/sdbm')
-rw-r--r-- | ext/sdbm/init.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c index f3e215e8d6..9311a7237d 100644 --- a/ext/sdbm/init.c +++ b/ext/sdbm/init.c @@ -406,13 +406,6 @@ fsdbm_invert(obj) static VALUE each_pair _((VALUE)); -static VALUE -each_pair(obj) - VALUE obj; -{ - return rb_funcall(obj, rb_intern("each_pair"), 0, 0); -} - static VALUE fsdbm_store _((VALUE,VALUE,VALUE)); static VALUE @@ -431,7 +424,7 @@ static VALUE fsdbm_update(obj, other) VALUE obj, other; { - rb_iterate(each_pair, other, update_i, obj); + rb_block_call(other, rb_intern("each_pair"), 0, 0, update_i, obj); return obj; } @@ -440,7 +433,7 @@ fsdbm_replace(obj, other) VALUE obj, other; { fsdbm_clear(obj); - rb_iterate(each_pair, other, update_i, obj); + rb_block_call(other, rb_intern("each_pair"), 0, 0, update_i, obj); return obj; } |