]> git.eshelyaron.com Git - emacs.git/commitdiff
(char_table_translate): New function.
authorRichard M. Stallman <rms@gnu.org>
Thu, 2 Apr 1998 08:10:56 +0000 (08:10 +0000)
committerRichard M. Stallman <rms@gnu.org>
Thu, 2 Apr 1998 08:10:56 +0000 (08:10 +0000)
src/fns.c

index 3b74db33ca207e66b3c15a7bde57c613875db597..6d30c09c45bdd176c9d82c5e3403793194a24ecc 100644 (file)
--- 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);
+}
 \f
 /* Map C_FUNCTION or FUNCTION over SUBTABLE, calling it for each
    character or group of characters that share a value.