-int
-copy_scm_hashes (SCM dest, SCM src)
-{
- int k = 0;
- for (int i = scm_c_vector_length (src); i--;)
- for (SCM s = scm_vector_ref (src, scm_from_int (i)); scm_is_pair (s); s = scm_cdr (s))
- {
- scm_hashq_set_x (dest, scm_caar (s), scm_cdar (s));
- k++;
- }
- return k;
-}
-
-Scheme_hash_table::Scheme_hash_table ()
-{
- hash_tab_ = SCM_EOL;
- smobify_self ();
- hash_tab_ = scm_make_vector (scm_int2num (119), SCM_EOL);
- elt_count_ = 0;
-}
-
-Scheme_hash_table::Scheme_hash_table (Scheme_hash_table const &src)
-
-{
- hash_tab_ = SCM_EOL;
- elt_count_ = 0;
- smobify_self ();
-
- hash_tab_ = scm_make_vector (scm_int2num (src.elt_count_ >? 11), SCM_EOL);
- elt_count_ = copy_scm_hashes (hash_tab_, src.hash_tab_);
-}
-
-void
-Scheme_hash_table::operator = (Scheme_hash_table const &src)
-{
- if (&src == this)
- return;