diff options
| author | Richard M. Stallman | 1998-04-02 08:10:56 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1998-04-02 08:10:56 +0000 |
| commit | 1d969a233975ea3283a54545d419ffd9d7b7e8e9 (patch) | |
| tree | e1f46873b0ff2dde4a55af513b819f7239b8bb91 /src | |
| parent | 17030183307147ca954f4346fb2b71a2bd8d1d4b (diff) | |
| download | emacs-1d969a233975ea3283a54545d419ffd9d7b7e8e9.tar.gz emacs-1d969a233975ea3283a54545d419ffd9d7b7e8e9.zip | |
(char_table_translate): New function.
Diffstat (limited to 'src')
| -rw-r--r-- | src/fns.c | 17 |
1 files changed, 17 insertions, 0 deletions
| @@ -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 | |||
| 1884 | int | ||
| 1885 | char_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. |