summaryrefslogtreecommitdiff
path: root/src/keymap.c
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1994-11-18 05:29:08 +0000
committerKarl Heuer <kwzh@gnu.org>1994-11-18 05:29:08 +0000
commit103eb1f3e29d96b607fbf540ebe09c87d587b68c (patch)
tree805c9a0e6beacd96c6c82f199d0d53d50eccd39e /src/keymap.c
parent1d2c5aa82af2bc56e1d81fb3db4f7b38d3148278 (diff)
downloademacs-103eb1f3e29d96b607fbf540ebe09c87d587b68c.tar.gz
(Fsingle_key_description): Use type test macros.
Diffstat (limited to 'src/keymap.c')
-rw-r--r--src/keymap.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 3ed2a9f416a..66f05a53135 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1494,22 +1494,17 @@ Control characters turn into C-whatever, etc.")
key = EVENT_HEAD (key);
- switch (XTYPE (key))
+ if (INTEGERP (key)) /* Normal character */
{
- case Lisp_Int: /* Normal character */
*push_key_description (XUINT (key), tem) = 0;
return build_string (tem);
-
- case Lisp_Symbol: /* Function key or event-symbol */
- return Fsymbol_name (key);
-
- /* Buffer names in the menubar can trigger this. */
- case Lisp_String:
- return Fcopy_sequence (key);
-
- default:
- error ("KEY must be an integer, cons, symbol, or string");
}
+ else if (SYMBOLP (key)) /* Function key or event-symbol */
+ return Fsymbol_name (key);
+ else if (STRINGP (key)) /* Buffer names in the menubar. */
+ return Fcopy_sequence (key);
+ else
+ error ("KEY must be an integer, cons, symbol, or string");
}
char *