summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-06-11 13:33:47 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-06-11 13:33:47 +0000
commit21606c6ec56bf11be012f391e43974132ae5646f (patch)
tree2258a25cf98166401ff369394d9bd664b18dc48f
parent6ea8b5094649cb28b5cf1ea7e1c9bed32cf5c31f (diff)
* array.c: remove #indexes, #indices.
* hash.c: ditto. * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning from #select. * ext/gdbm/gdbm.c: ditto. * ext/sdbm/init.c: ditto. * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when DB_VERSION_STRING is not available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog16
-rw-r--r--array.c27
-rw-r--r--ext/dbm/dbm.c64
-rw-r--r--ext/gdbm/gdbm.c60
-rw-r--r--ext/sdbm/init.c64
-rw-r--r--hash.c72
6 files changed, 65 insertions, 238 deletions
diff --git a/ChangeLog b/ChangeLog
index e49bab5fb2..86e85d564c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+Fri Jun 11 22:08:50 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * array.c: remove #indexes, #indices.
+
+ * hash.c: ditto.
+
+ * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
+ from #select.
+
+ * ext/gdbm/gdbm.c: ditto.
+
+ * ext/sdbm/init.c: ditto.
+
+ * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
+ DB_VERSION_STRING is not available.
+
Thu Jun 10 19:19:41 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
diff --git a/array.c b/array.c
index 53c50d4bbb..9ba53bc548 100644
--- a/array.c
+++ b/array.c
@@ -951,31 +951,6 @@ rb_ary_rindex(ary, val)
return Qnil;
}
-/*
- * call-seq:
- * array.indexes( i1, i2, ... iN ) => an_array
- * array.indices( i1, i2, ... iN ) => an_array
- *
- * Deprecated; use <code>Array#select</code>.
- */
-
-static VALUE
-rb_ary_indexes(argc, argv, ary)
- int argc;
- VALUE *argv;
- VALUE ary;
-{
- VALUE new_ary;
- long i;
-
- new_ary = rb_ary_new2(argc);
- for (i=0; i<argc; i++) {
- rb_ary_push(new_ary, rb_ary_aref(1, argv+i, ary));
- }
-
- return new_ary;
-}
-
VALUE
rb_ary_to_ary(obj)
VALUE obj;
@@ -3029,8 +3004,6 @@ Init_Array()
rb_define_method(rb_cArray, "empty?", rb_ary_empty_p, 0);
rb_define_method(rb_cArray, "index", rb_ary_index, 1);
rb_define_method(rb_cArray, "rindex", rb_ary_rindex, 1);
- rb_define_method(rb_cArray, "indexes", rb_ary_indexes, -1);
- rb_define_method(rb_cArray, "indices", rb_ary_indexes, -1);
rb_define_method(rb_cArray, "join", rb_ary_join_m, -1);
rb_define_method(rb_cArray, "reverse", rb_ary_reverse_m, 0);
rb_define_method(rb_cArray, "reverse!", rb_ary_reverse_bang, 0);
diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c
index c76d667989..99144aa43b 100644
--- a/ext/dbm/dbm.c
+++ b/ext/dbm/dbm.c
@@ -220,57 +220,25 @@ fdbm_index(obj, valstr)
}
static VALUE
-fdbm_indexes(argc, argv, obj)
- int argc;
- VALUE *argv;
- VALUE obj;
-{
- VALUE new;
- int i;
-
- new = rb_ary_new2(argc);
- for (i=0; i<argc; i++) {
- rb_ary_push(new, fdbm_fetch(obj, argv[i], Qnil));
- }
-
- return new;
-}
-
-static VALUE
-fdbm_select(argc, argv, obj)
- int argc;
- VALUE *argv;
+fdbm_select(obj)
VALUE obj;
{
- VALUE new = rb_ary_new2(argc);
+ VALUE new = rb_ary_new();
int i;
+ datum key, val;
+ DBM *dbm;
+ struct dbmdata *dbmp;
- if (rb_block_given_p()) {
- datum key, val;
- DBM *dbm;
- struct dbmdata *dbmp;
-
- if (argc > 0) {
- rb_raise(rb_eArgError, "wrong number arguments(%d for 0)", argc);
- }
- GetDBM(obj, dbmp);
- dbm = dbmp->di_dbm;
-
- for (key = dbm_firstkey(dbm); key.dptr; key = dbm_nextkey(dbm)) {
- VALUE assoc;
- val = dbm_fetch(dbm, key);
- assoc = rb_assoc_new(rb_tainted_str_new(key.dptr, key.dsize),
- rb_tainted_str_new(val.dptr, val.dsize));
- if (RTEST(rb_yield(assoc)))
- rb_ary_push(new, assoc);
- }
- }
- else {
- rb_warn("DBM#select(index..) is deprecated; use DBM#values_at");
+ GetDBM(obj, dbmp);
+ dbm = dbmp->di_dbm;
- for (i=0; i<argc; i++) {
- rb_ary_push(new, fdbm_fetch(obj, argv[i], Qnil));
- }
+ for (key = dbm_firstkey(dbm); key.dptr; key = dbm_nextkey(dbm)) {
+ VALUE assoc;
+ val = dbm_fetch(dbm, key);
+ assoc = rb_assoc_new(rb_tainted_str_new(key.dptr, key.dsize),
+ rb_tainted_str_new(val.dptr, val.dsize));
+ if (RTEST(rb_yield(assoc)))
+ rb_ary_push(new, assoc);
}
return new;
@@ -766,8 +734,6 @@ Init_dbm()
rb_define_method(rb_cDBM, "[]=", fdbm_store, 2);
rb_define_method(rb_cDBM, "store", fdbm_store, 2);
rb_define_method(rb_cDBM, "index", fdbm_index, 1);
- rb_define_method(rb_cDBM, "indexes", fdbm_indexes, -1);
- rb_define_method(rb_cDBM, "indices", fdbm_indexes, -1);
rb_define_method(rb_cDBM, "select", fdbm_select, -1);
rb_define_method(rb_cDBM, "values_at", fdbm_values_at, -1);
rb_define_method(rb_cDBM, "length", fdbm_length, 0);
@@ -807,5 +773,7 @@ Init_dbm()
#ifdef DB_VERSION_STRING
rb_define_const(rb_cDBM, "VERSION", rb_str_new2(DB_VERSION_STRING));
+#else
+ rb_define_const(rb_cDBM, "VERSION", rb_str_new2("unknown"));
#endif
}
diff --git a/ext/gdbm/gdbm.c b/ext/gdbm/gdbm.c
index 799445a89c..49c86149e2 100644
--- a/ext/gdbm/gdbm.c
+++ b/ext/gdbm/gdbm.c
@@ -316,56 +316,24 @@ fgdbm_index(obj, valstr)
}
static VALUE
-fgdbm_indexes(argc, argv, obj)
- int argc;
- VALUE *argv;
- VALUE obj;
-{
- VALUE new;
- int i;
-
- new = rb_ary_new2(argc);
- for (i=0; i<argc; i++) {
- rb_ary_push(new, rb_gdbm_fetch3(obj, argv[i]));
- }
-
- return new;
-}
-
-static VALUE
-fgdbm_select(argc, argv, obj)
- int argc;
- VALUE *argv;
+fgdbm_select(obj)
VALUE obj;
{
- VALUE new = rb_ary_new2(argc);
+ VALUE new = rb_ary_new();
int i;
+ GDBM_FILE dbm;
+ struct dbmdata *dbmp;
+ VALUE keystr;
- if (rb_block_given_p()) {
- GDBM_FILE dbm;
- struct dbmdata *dbmp;
- VALUE keystr;
-
- if (argc > 0) {
- rb_raise(rb_eArgError, "wrong number arguments(%d for 0)", argc);
- }
- GetDBM(obj, dbmp);
- dbm = dbmp->di_dbm;
-
- for (keystr = rb_gdbm_firstkey(dbm); RTEST(keystr);
- keystr = rb_gdbm_nextkey(dbm, keystr)) {
- VALUE assoc = rb_assoc_new(keystr, rb_gdbm_fetch2(dbm, keystr));
+ GetDBM(obj, dbmp);
+ dbm = dbmp->di_dbm;
- if (RTEST(rb_yield(assoc)))
- rb_ary_push(new, assoc);
- }
- }
- else {
- rb_warn("GDBM#select(index..) is deprecated; use GDBM#values_at");
+ for (keystr = rb_gdbm_firstkey(dbm); RTEST(keystr);
+ keystr = rb_gdbm_nextkey(dbm, keystr)) {
+ VALUE assoc = rb_assoc_new(keystr, rb_gdbm_fetch2(dbm, keystr));
- for (i=0; i<argc; i++) {
- rb_ary_push(new, rb_gdbm_fetch3(obj, argv[i]));
- }
+ if (RTEST(rb_yield(assoc)))
+ rb_ary_push(new, assoc);
}
return new;
@@ -970,9 +938,7 @@ Init_gdbm()
rb_define_method(rb_cGDBM, "[]=", fgdbm_store, 2);
rb_define_method(rb_cGDBM, "store", fgdbm_store, 2);
rb_define_method(rb_cGDBM, "index", fgdbm_index, 1);
- rb_define_method(rb_cGDBM, "indexes", fgdbm_indexes, -1);
- rb_define_method(rb_cGDBM, "indices", fgdbm_indexes, -1);
- rb_define_method(rb_cGDBM, "select", fgdbm_select, -1);
+ rb_define_method(rb_cGDBM, "select", fgdbm_select, 0);
rb_define_method(rb_cGDBM, "values_at", fgdbm_values_at, -1);
rb_define_method(rb_cGDBM, "length", fgdbm_length, 0);
rb_define_method(rb_cGDBM, "size", fgdbm_length, 0);
diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c
index 0f9ae1dbff..ecd4fd9201 100644
--- a/ext/sdbm/init.c
+++ b/ext/sdbm/init.c
@@ -196,57 +196,25 @@ fsdbm_index(obj, valstr)
}
static VALUE
-fsdbm_indexes(argc, argv, obj)
- int argc;
- VALUE *argv;
- VALUE obj;
-{
- VALUE new;
- int i;
-
- new = rb_ary_new2(argc);
- for (i=0; i<argc; i++) {
- rb_ary_push(new, fsdbm_fetch(obj, argv[i], Qnil));
- }
-
- return new;
-}
-
-static VALUE
-fsdbm_select(argc, argv, obj)
- int argc;
- VALUE *argv;
+fsdbm_select(obj)
VALUE obj;
{
- VALUE new = rb_ary_new2(argc);
+ VALUE new = rb_ary_new();
int i;
+ datum key, val;
+ DBM *dbm;
+ struct dbmdata *dbmp;
- if (rb_block_given_p()) {
- datum key, val;
- DBM *dbm;
- struct dbmdata *dbmp;
-
- if (argc > 0) {
- rb_raise(rb_eArgError, "wrong number of arguments (%d for 0)", argc);
- }
- GetDBM(obj, dbmp);
- dbm = dbmp->di_dbm;
-
- for (key = sdbm_firstkey(dbm); key.dptr; key = sdbm_nextkey(dbm)) {
- VALUE assoc;
- val = sdbm_fetch(dbm, key);
- assoc = rb_assoc_new(rb_tainted_str_new(key.dptr, key.dsize),
- rb_tainted_str_new(val.dptr, val.dsize));
- if (RTEST(rb_yield(assoc)))
- rb_ary_push(new, assoc);
- }
- }
- else {
- rb_warn("SDBM#select(index..) is deprecated; use SDBM#values_at");
+ GetDBM(obj, dbmp);
+ dbm = dbmp->di_dbm;
- for (i=0; i<argc; i++) {
- rb_ary_push(new, fsdbm_fetch(obj, argv[i], Qnil));
- }
+ for (key = sdbm_firstkey(dbm); key.dptr; key = sdbm_nextkey(dbm)) {
+ VALUE assoc;
+ val = sdbm_fetch(dbm, key);
+ assoc = rb_assoc_new(rb_tainted_str_new(key.dptr, key.dsize),
+ rb_tainted_str_new(val.dptr, val.dsize));
+ if (RTEST(rb_yield(assoc)))
+ rb_ary_push(new, assoc);
}
return new;
@@ -749,9 +717,7 @@ Init_sdbm()
rb_define_method(rb_cDBM, "[]=", fsdbm_store, 2);
rb_define_method(rb_cDBM, "store", fsdbm_store, 2);
rb_define_method(rb_cDBM, "index", fsdbm_index, 1);
- rb_define_method(rb_cDBM, "indexes", fsdbm_indexes, -1);
- rb_define_method(rb_cDBM, "indices", fsdbm_indexes, -1);
- rb_define_method(rb_cDBM, "select", fsdbm_select, -1);
+ rb_define_method(rb_cDBM, "select", fsdbm_select, 0);
rb_define_method(rb_cDBM, "values_at", fsdbm_values_at, -1);
rb_define_method(rb_cDBM, "length", fsdbm_length, 0);
rb_define_method(rb_cDBM, "size", fsdbm_length, 0);
diff --git a/hash.c b/hash.c
index b078d168eb..06b78de760 100644
--- a/hash.c
+++ b/hash.c
@@ -560,32 +560,6 @@ rb_hash_index(hash, value)
/*
* call-seq:
- * hsh.indexes(key, ...) => array
- * hsh.indices(key, ...) => array
- *
- * Deprecated in favor of <code>Hash#select</code>.
- *
- */
-
-static VALUE
-rb_hash_indexes(argc, argv, hash)
- int argc;
- VALUE *argv;
- VALUE hash;
-{
- VALUE indexes;
- int i;
-
- indexes = rb_ary_new2(argc);
- for (i=0; i<argc; i++) {
- RARRAY(indexes)->ptr[i] = rb_hash_aref(hash, argv[i]);
- RARRAY(indexes)->len++;
- }
- return indexes;
-}
-
-/*
- * call-seq:
* hsh.delete(key) => value
* hsh.delete(key) {| key | block } => value
*
@@ -770,7 +744,7 @@ rb_hash_values_at(argc, argv, hash)
VALUE *argv;
VALUE hash;
{
- VALUE result = rb_ary_new();
+ VALUE result = rb_ary_new2(argc);
long i;
for (i=0; i<argc; i++) {
@@ -793,16 +767,11 @@ rb_hash_values_at(argc, argv, hash)
*/
VALUE
-rb_hash_select(argc, argv, hash)
- int argc;
- VALUE *argv;
+rb_hash_select(hash)
VALUE hash;
{
VALUE result;
- if (argc > 0) {
- rb_raise(rb_eArgError, "wrong number of arguments (%d for 0)", argc);
- }
result = rb_ary_new();
rb_hash_foreach(hash, select_i, result);
return result;
@@ -2035,16 +2004,11 @@ env_values_at(argc, argv)
}
static VALUE
-env_select(argc, argv)
- int argc;
- VALUE *argv;
+env_select()
{
VALUE result;
char **env;
- if (argc > 0) {
- rb_raise(rb_eArgError, "wrong number of arguments (%d for 0)", argc);
- }
result = rb_ary_new();
env = GET_ENVIRON(environ);
while (*env) {
@@ -2231,28 +2195,6 @@ env_index(dmy, value)
}
static VALUE
-env_indexes(argc, argv)
- int argc;
- VALUE *argv;
-{
- int i;
- VALUE indexes = rb_ary_new2(argc);
-
- for (i=0;i<argc;i++) {
- VALUE tmp = rb_check_string_type(argv[i]);
- if (NIL_P(tmp)) {
- RARRAY(indexes)->ptr[i] = Qnil;
- }
- else {
- RARRAY(indexes)->ptr[i] = env_str_new2(getenv(RSTRING(tmp)->ptr));
- }
- RARRAY(indexes)->len = i+1;
- }
-
- return indexes;
-}
-
-static VALUE
env_to_hash()
{
char **env;
@@ -2400,8 +2342,6 @@ Init_Hash()
rb_define_method(rb_cHash,"default=", rb_hash_set_default, 1);
rb_define_method(rb_cHash,"default_proc", rb_hash_default_proc, 0);
rb_define_method(rb_cHash,"index", rb_hash_index, 1);
- rb_define_method(rb_cHash,"indexes", rb_hash_indexes, -1);
- rb_define_method(rb_cHash,"indices", rb_hash_indexes, -1);
rb_define_method(rb_cHash,"size", rb_hash_size, 0);
rb_define_method(rb_cHash,"length", rb_hash_size, 0);
rb_define_method(rb_cHash,"empty?", rb_hash_empty_p, 0);
@@ -2419,7 +2359,7 @@ Init_Hash()
rb_define_method(rb_cHash,"shift", rb_hash_shift, 0);
rb_define_method(rb_cHash,"delete", rb_hash_delete, 1);
rb_define_method(rb_cHash,"delete_if", rb_hash_delete_if, 0);
- rb_define_method(rb_cHash,"select", rb_hash_select, -1);
+ rb_define_method(rb_cHash,"select", rb_hash_select, 0);
rb_define_method(rb_cHash,"reject", rb_hash_reject, 0);
rb_define_method(rb_cHash,"reject!", rb_hash_reject_bang, 0);
rb_define_method(rb_cHash,"clear", rb_hash_clear, 0);
@@ -2454,7 +2394,7 @@ Init_Hash()
rb_define_singleton_method(envtbl,"clear", env_clear, 0);
rb_define_singleton_method(envtbl,"reject", env_reject, 0);
rb_define_singleton_method(envtbl,"reject!", env_reject_bang, 0);
- rb_define_singleton_method(envtbl,"select", env_select, -1);
+ rb_define_singleton_method(envtbl,"select", env_select, 0);
rb_define_singleton_method(envtbl,"shift", env_shift, 0);
rb_define_singleton_method(envtbl,"invert", env_invert, 0);
rb_define_singleton_method(envtbl,"replace", env_replace, 1);
@@ -2464,8 +2404,6 @@ Init_Hash()
rb_define_singleton_method(envtbl,"to_a", env_to_a, 0);
rb_define_singleton_method(envtbl,"to_s", env_to_s, 0);
rb_define_singleton_method(envtbl,"index", env_index, 1);
- rb_define_singleton_method(envtbl,"indexes", env_indexes, -1);
- rb_define_singleton_method(envtbl,"indices", env_indexes, -1);
rb_define_singleton_method(envtbl,"size", env_size, 0);
rb_define_singleton_method(envtbl,"length", env_size, 0);
rb_define_singleton_method(envtbl,"empty?", env_empty_p, 0);