From: Richard M. Stallman Date: Thu, 2 Apr 1998 08:10:56 +0000 (+0000) Subject: (char_table_translate): New function. X-Git-Tag: emacs-20.3~1735 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1d969a233975ea3283a54545d419ffd9d7b7e8e9;p=emacs.git (char_table_translate): New function. --- diff --git a/src/fns.c b/src/fns.c index 3b74db33ca2..6d30c09c45b 100644 --- a/src/fns.c +++ b/src/fns.c @@ -1875,6 +1875,23 @@ See also the documentation of make-char.") XCHAR_TABLE (char_table)->contents[code1] = value; return value; } + +/* Look up the element in TABLE at index CH, + and return it as an integer. + If the element is nil, return CH itself. + (Actually we do that for any non-integer.) */ + +int +char_table_translate (table, ch) + Lisp_Object table; + int ch; +{ + Lisp_Object value; + value = Faref (table, make_number (ch)); + if (! INTEGERP (value)) + return ch; + return XINT (value); +} /* Map C_FUNCTION or FUNCTION over SUBTABLE, calling it for each character or group of characters that share a value.