]> code.delx.au - gnu-emacs/commitdiff
(SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
authorKenichi Handa <handa@m17n.org>
Fri, 1 Mar 2002 01:48:16 +0000 (01:48 +0000)
committerKenichi Handa <handa@m17n.org>
Fri, 1 Mar 2002 01:48:16 +0000 (01:48 +0000)
(SYNTAX_ENTRY_FOLLOW_PARENT): Macro deleted.
(SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
(SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.

src/syntax.h

index 41f6662ddeb14971e2662d957f0a6e7ca42bd426..37fe06808c0510a71ce4cbcf64baa8d1485dd091 100644 (file)
@@ -57,37 +57,14 @@ enum syntaxcode
 
 /* Set the syntax entry VAL for char C in table TABLE.  */
 
-#define SET_RAW_SYNTAX_ENTRY(table, c, val)                            \
-  ((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS                                  \
-   ? (XCHAR_TABLE (table)->contents[(unsigned char) (c)] = (val))      \
-   : Faset ((table), make_number (c), (val)))
+#define SET_RAW_SYNTAX_ENTRY(table, c, val)    \
+  CHAR_TABLE_SET ((table), make_number (c), (val))
 
-/* Fetch the syntax entry for char C in syntax table TABLE.
-   This macro is called only when C is less than CHAR_TABLE_ORDINARY_SLOTS.
-   Do inheritance.  */
+/* Set the syntax entry VAL for char-range RANGE in table TABLE.
+   RANGE is a cons (FROM . TO) specifying the range of characters.  */
 
-#ifdef __GNUC__
-#define SYNTAX_ENTRY_FOLLOW_PARENT(table, c)                   \
-  ({ Lisp_Object tbl = table;                                  \
-     Lisp_Object temp = XCHAR_TABLE (tbl)->contents[(c)];      \
-     while (NILP (temp))                                       \
-       {                                                       \
-        tbl = XCHAR_TABLE (tbl)->parent;                       \
-        if (NILP (tbl))                                        \
-          break;                                               \
-        temp = XCHAR_TABLE (tbl)->contents[(c)];               \
-       }                                                       \
-     temp; })
-#else
-extern Lisp_Object syntax_temp;
-extern Lisp_Object syntax_parent_lookup P_ ((Lisp_Object, int));
-
-#define SYNTAX_ENTRY_FOLLOW_PARENT(table, c)           \
-  (syntax_temp = XCHAR_TABLE (table)->contents[(c)],   \
-   (NILP (syntax_temp)                                 \
-    ? syntax_parent_lookup (table, (c))                        \
-    : syntax_temp))
-#endif
+#define SET_RAW_SYNTAX_ENTRY_RANGE(table, range, val)  \
+  Fset_char_table_range ((table), (range), (val))
 
 /* SYNTAX_ENTRY fetches the information from the entry for character C
    in syntax table TABLE, or from globally kept data (gl_state).  
@@ -105,12 +82,8 @@ extern Lisp_Object syntax_parent_lookup P_ ((Lisp_Object, int));
 #  define CURRENT_SYNTAX_TABLE current_buffer->syntax_table
 #endif
 
-#define SYNTAX_ENTRY_INT(c)                            \
-  ((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS                  \
-   ? SYNTAX_ENTRY_FOLLOW_PARENT (CURRENT_SYNTAX_TABLE, \
-                                (unsigned char) (c))   \
-   : Faref (CURRENT_SYNTAX_TABLE,                      \
-           make_number (c)))
+#define SYNTAX_ENTRY_INT(c)    \
+  CHAR_TABLE_REF (CURRENT_SYNTAX_TABLE, make_number (c))
 
 /* Extract the information from the entry for character C
    in the current syntax table.  */