From: Kenichi Handa Date: Fri, 1 Mar 2002 01:48:16 +0000 (+0000) Subject: (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET. X-Git-Tag: emacs-pretest-23.0.90~8295^2~1864^2~991 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f4926ee83540d77f35cc9a9251bc75025caea237;p=emacs.git (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET. (SYNTAX_ENTRY_FOLLOW_PARENT): Macro deleted. (SET_RAW_SYNTAX_ENTRY_RANGE): New macro. (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF. --- diff --git a/src/syntax.h b/src/syntax.h index 41f6662ddeb..37fe06808c0 100644 --- a/src/syntax.h +++ b/src/syntax.h @@ -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. */