aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1998-04-02 08:10:56 +0000
committerRichard M. Stallman1998-04-02 08:10:56 +0000
commit1d969a233975ea3283a54545d419ffd9d7b7e8e9 (patch)
treee1f46873b0ff2dde4a55af513b819f7239b8bb91 /src
parent17030183307147ca954f4346fb2b71a2bd8d1d4b (diff)
downloademacs-1d969a233975ea3283a54545d419ffd9d7b7e8e9.tar.gz
emacs-1d969a233975ea3283a54545d419ffd9d7b7e8e9.zip
(char_table_translate): New function.
Diffstat (limited to 'src')
-rw-r--r--src/fns.c17
1 files changed, 17 insertions, 0 deletions
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.")
1875 XCHAR_TABLE (char_table)->contents[code1] = value; 1875 XCHAR_TABLE (char_table)->contents[code1] = value;
1876 return value; 1876 return value;
1877} 1877}
1878
1879/* Look up the element in TABLE at index CH,
1880 and return it as an integer.
1881 If the element is nil, return CH itself.
1882 (Actually we do that for any non-integer.) */
1883
1884int
1885char_table_translate (table, ch)
1886 Lisp_Object table;
1887 int ch;
1888{
1889 Lisp_Object value;
1890 value = Faref (table, make_number (ch));
1891 if (! INTEGERP (value))
1892 return ch;
1893 return XINT (value);
1894}
1878 1895
1879/* Map C_FUNCTION or FUNCTION over SUBTABLE, calling it for each 1896/* Map C_FUNCTION or FUNCTION over SUBTABLE, calling it for each
1880 character or group of characters that share a value. 1897 character or group of characters that share a value.