diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-27 15:56:14 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-27 15:56:14 +0000 |
commit | 844a6890c6fb00a311af6c27bcac482c2086cc3a (patch) | |
tree | 9a350ac63f9d16c4e11c7e4cf1d4bdb2d190939d /include/ruby/st.h | |
parent | 51bf0388aa1b9cf86af556104917a6a544152cf8 (diff) |
* st.c (st_insert2): new function with processing new key,
e.g. copy.
* hash.c (rb_hash_aset): use st_insert2() to reduce redundant
st_lookup calls.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include/ruby/st.h')
-rw-r--r-- | include/ruby/st.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/ruby/st.h b/include/ruby/st.h index 73216ba45c..0c80d3a225 100644 --- a/include/ruby/st.h +++ b/include/ruby/st.h @@ -93,6 +93,7 @@ st_table *st_init_strcasetable_with_size(int); int st_delete(st_table *, st_data_t *, st_data_t *); /* returns 0:notfound 1:deleted */ int st_delete_safe(st_table *, st_data_t *, st_data_t *, st_data_t); int st_insert(st_table *, st_data_t, st_data_t); +int st_insert2(st_table *, st_data_t, st_data_t, st_data_t (*)(st_data_t)); int st_lookup(st_table *, st_data_t, st_data_t *); int st_get_key(st_table *, st_data_t, st_data_t *); int st_foreach(st_table *, int (*)(ANYARGS), st_data_t); |