Adjusted for the change of CHAR_TABLE_ORDINARY_SLOTS.

This commit is contained in:
Kenichi Handa 1997-03-18 23:31:34 +00:00
parent 513ee44261
commit cecda31486
2 changed files with 8 additions and 8 deletions

View file

@ -352,7 +352,7 @@ If optional forth argument RESET is non NIL,\n\
set_value = NILP (reset) ? Qt : Qnil;
if (SINGLE_BYTE_CHAR_P (c))
if ((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS)
{
val = XCHAR_TABLE (table)->contents[c];
if (!CATEGORY_SET_P (val))
@ -366,11 +366,11 @@ If optional forth argument RESET is non NIL,\n\
SPLIT_NON_ASCII_CHAR (c, charset, c1, c2);
/* The top level table. */
val = XCHAR_TABLE (table)->contents[charset];
val = XCHAR_TABLE (table)->contents[charset + 128];
if (NILP (val))
{
category_set = MAKE_CATEGORY_SET;
XCHAR_TABLE (table)->contents[charset] = category_set;
XCHAR_TABLE (table)->contents[charset + 128] = category_set;
}
else if (CATEGORY_SET_P (val))
category_set = val;
@ -390,7 +390,7 @@ If optional forth argument RESET is non NIL,\n\
if (!CHAR_TABLE_P (val))
{
val = Fmake_char_table (Qnil, Qnil);
XCHAR_TABLE (table)->contents[charset] = val;
XCHAR_TABLE (table)->contents[charset + 128] = val;
/* We must set default category set of CHARSET in `defalt' slot. */
XCHAR_TABLE (val)->defalt = category_set;
}

View file

@ -37,12 +37,12 @@ Boston, MA 02111-1307, USA. */
categories. Total number of categories is limited to 95.
A category set is a set of categories represented by Lisp
bool-vector of length 128 (only elements of 31th through 125th
bool-vector of length 128 (only elements of 31th through 126th
are used).
A category table is like syntax-table, represented by a Lisp
char-table. The contents are category sets or nil. It has two
extra slots. for a vector of doc string of each category and a
extra slots, for a vector of doc string of each category and a
version number.
The first extra slot is a vector of doc strings of categories, the
@ -101,7 +101,7 @@ extern Lisp_Object _temp_category_set;
#define CATEGORY_SET(c) \
({ Lisp_Object table = current_buffer->category_table; \
Lisp_Object temp; \
if ((c) < CHAR_TABLE_ORDINARY_SLOTS) \
if ((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS) \
while (NILP (temp = XCHAR_TABLE (table)->contents[(unsigned char) c]) \
&& NILP (temp = XCHAR_TABLE (table)->defalt)) \
table = XCHAR_TABLE (table)->parent; \
@ -111,7 +111,7 @@ extern Lisp_Object _temp_category_set;
temp; })
#else
#define CATEGORY_SET(c) \
((c) < CHAR_TABLE_ORDINARY_SLOTS \
((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS \
? Faref (current_buffer->category_table, make_number ((unsigned char) c)) \
: Faref (current_buffer->category_table, \
COMPOSITE_CHAR_P (c) ? cmpchar_component ((c), 0) : (c))