comparison src/elhash.h @ 450:98528da0b7fc r21-2-40

Import from CVS: tag r21-2-40
author cvs
date Mon, 13 Aug 2007 11:39:20 +0200
parents abe6d1db359e
children 4a8bb4aa9740
comparison
equal deleted inserted replaced
449:c83749d23eb5 450:98528da0b7fc
39 HASH_TABLE_KEY_WEAK, 39 HASH_TABLE_KEY_WEAK,
40 HASH_TABLE_VALUE_WEAK, 40 HASH_TABLE_VALUE_WEAK,
41 HASH_TABLE_KEY_VALUE_WEAK, 41 HASH_TABLE_KEY_VALUE_WEAK,
42 HASH_TABLE_KEY_CAR_WEAK, 42 HASH_TABLE_KEY_CAR_WEAK,
43 HASH_TABLE_VALUE_CAR_WEAK, 43 HASH_TABLE_VALUE_CAR_WEAK,
44 HASH_TABLE_KEY_CAR_VALUE_WEAK,
44 HASH_TABLE_WEAK 45 HASH_TABLE_WEAK
45 }; 46 };
46 47
47 enum hash_table_test 48 enum hash_table_test
48 { 49 {
64 typedef int (*hash_table_test_function_t) (Lisp_Object obj1, Lisp_Object obj2); 65 typedef int (*hash_table_test_function_t) (Lisp_Object obj1, Lisp_Object obj2);
65 typedef unsigned long (*hash_table_hash_function_t) (Lisp_Object obj); 66 typedef unsigned long (*hash_table_hash_function_t) (Lisp_Object obj);
66 typedef int (*maphash_function_t) (Lisp_Object key, Lisp_Object value, 67 typedef int (*maphash_function_t) (Lisp_Object key, Lisp_Object value,
67 void* extra_arg); 68 void* extra_arg);
68 69
69 Lisp_Object make_general_lisp_hash_table (enum hash_table_test test, 70 Lisp_Object make_standard_lisp_hash_table (enum hash_table_test test,
71 size_t size,
72 double rehash_size,
73 double rehash_threshold,
74 enum hash_table_weakness weakness);
75
76 Lisp_Object make_general_lisp_hash_table (hash_table_hash_function_t hash_function,
77 hash_table_test_function_t test_function,
70 size_t size, 78 size_t size,
71 double rehash_size, 79 double rehash_size,
72 double rehash_threshold, 80 double rehash_threshold,
73 enum hash_table_weakness weakness); 81 enum hash_table_weakness weakness);
74 82