comparison src/keymap.c @ 647:b39c14581166

[xemacs-hg @ 2001-08-13 04:45:47 by ben] removal of unsigned, size_t, etc.
author ben
date Mon, 13 Aug 2001 04:46:48 +0000
parents 183866b06e0b
children fdefd0186b75
comparison
equal deleted inserted replaced
646:00c54252fe4f 647:b39c14581166
749 /************************************************************************/ 749 /************************************************************************/
750 /* Basic operations on keymaps */ 750 /* Basic operations on keymaps */
751 /************************************************************************/ 751 /************************************************************************/
752 752
753 static Lisp_Object 753 static Lisp_Object
754 make_keymap (size_t size) 754 make_keymap (Element_Count size)
755 { 755 {
756 Lisp_Object result; 756 Lisp_Object result;
757 Lisp_Keymap *keymap = alloc_lcrecord_type (Lisp_Keymap, &lrecord_keymap); 757 Lisp_Keymap *keymap = alloc_lcrecord_type (Lisp_Keymap, &lrecord_keymap);
758 758
759 XSETKEYMAP (result, keymap); 759 XSETKEYMAP (result, keymap);
771 keymap->table = 771 keymap->table =
772 make_lisp_hash_table (size, HASH_TABLE_NON_WEAK, HASH_TABLE_EQ); 772 make_lisp_hash_table (size, HASH_TABLE_NON_WEAK, HASH_TABLE_EQ);
773 /* Inverse table is often less dense because of duplicate key-bindings. 773 /* Inverse table is often less dense because of duplicate key-bindings.
774 If not, it will grow anyway. */ 774 If not, it will grow anyway. */
775 keymap->inverse_table = 775 keymap->inverse_table =
776 make_lisp_hash_table (size * 3 / 4, HASH_TABLE_NON_WEAK, HASH_TABLE_EQ); 776 make_lisp_hash_table (size * 3 / 4, HASH_TABLE_NON_WEAK,
777 HASH_TABLE_EQ);
777 } 778 }
778 return result; 779 return result;
779 } 780 }
780 781
781 DEFUN ("make-keymap", Fmake_keymap, 0, 1, 0, /* 782 DEFUN ("make-keymap", Fmake_keymap, 0, 1, 0, /*
2240 */ 2241 */
2241 2242
2242 struct relevant_maps 2243 struct relevant_maps
2243 { 2244 {
2244 int nmaps; 2245 int nmaps;
2245 unsigned int max_maps; 2246 int max_maps;
2246 Lisp_Object *maps; 2247 Lisp_Object *maps;
2247 struct gcpro *gcpro; 2248 struct gcpro *gcpro;
2248 }; 2249 };
2249 2250
2250 static void get_relevant_extent_keymaps (Lisp_Object pos, 2251 static void get_relevant_extent_keymaps (Lisp_Object pos,
2255 struct relevant_maps *closure); 2256 struct relevant_maps *closure);
2256 2257
2257 static void 2258 static void
2258 relevant_map_push (Lisp_Object map, struct relevant_maps *closure) 2259 relevant_map_push (Lisp_Object map, struct relevant_maps *closure)
2259 { 2260 {
2260 unsigned int nmaps = closure->nmaps; 2261 int nmaps = closure->nmaps;
2261 2262
2262 if (!KEYMAPP (map)) 2263 if (!KEYMAPP (map))
2263 return; 2264 return;
2264 closure->nmaps = nmaps + 1; 2265 closure->nmaps = nmaps + 1;
2265 if (nmaps < closure->max_maps) 2266 if (nmaps < closure->max_maps)