mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-18 03:40:47 -08:00
Use float instead of Lisp_Object for rehash_size
* src/alloc.c (purecopy_hash_table): * src/fns.c (maybe_resize_hash_table, Fmake_hash_table): (Fhash_table_rehash_size): * src/lisp.h (struct Lisp_Hash_Table.rehash_size): The rehash_size member of struct Lisp_Hash_Table is now a float, not a Lisp_Object. * src/alloc.c (purecopy_hash_table): Assign members in order. * src/fns.c (make_hash_table): Use EMACS_INT for size and float for rehash_size, instead of Lisp_Object for both. All callers changed. * src/lisp.h (DEFAULT_REHASH_SIZE): Now float, not double, and 1 smaller. * src/print.c (print_object): Simplify by calling Fhash_table_rehash_size and Fhash_table_rehash_threshold. Avoid unnecessary NILP.
This commit is contained in:
parent
5cbdaa98f9
commit
83c9c6fc1c
10 changed files with 84 additions and 79 deletions
|
|
@ -5453,18 +5453,18 @@ purecopy_hash_table (struct Lisp_Hash_Table *table)
|
|||
pure_test.user_hash_function = purecopy (table->test.user_hash_function);
|
||||
pure_test.user_cmp_function = purecopy (table->test.user_cmp_function);
|
||||
|
||||
pure->test = pure_test;
|
||||
pure->header = table->header;
|
||||
pure->weak = purecopy (Qnil);
|
||||
pure->rehash_size = purecopy (table->rehash_size);
|
||||
pure->hash = purecopy (table->hash);
|
||||
pure->next = purecopy (table->next);
|
||||
pure->next_free = table->next_free;
|
||||
pure->index = purecopy (table->index);
|
||||
pure->count = table->count;
|
||||
pure->next_free = table->next_free;
|
||||
pure->pure = table->pure;
|
||||
pure->rehash_threshold = table->rehash_threshold;
|
||||
pure->rehash_size = table->rehash_size;
|
||||
pure->key_and_value = purecopy (table->key_and_value);
|
||||
pure->test = pure_test;
|
||||
|
||||
return pure;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue