#define CATEGORYP(x) \
(INTEGERP ((x)) && XFASTINT ((x)) >= 0x20 && XFASTINT ((x)) <= 0x7E)
-#define CHECK_CATEGORY(x, i) \
+#define CHECK_CATEGORY(x) \
do { \
if (!CATEGORYP ((x))) x = wrong_type_argument (Qcategoryp, (x)); \
} while (0)
#define SET_CATEGORY_SET(category_set, category, val) \
(Faset (category_set, category, val))
-#define CHECK_CATEGORY_SET(x, i) \
+#define CHECK_CATEGORY_SET(x) \
do { \
if (!CATEGORY_SET_P ((x))) x = wrong_type_argument (Qcategorysetp, (x)); \
} while (0)
&& NILP (temp = XCHAR_TABLE (table)->defalt)) \
table = XCHAR_TABLE (table)->parent; \
else \
- temp = Faref (table, \
- make_number (COMPOSITE_CHAR_P (c) \
- ? cmpchar_component (c, 0) : (c))); \
+ temp = Faref (table, make_number (c)); \
temp; })
#else
-#define CATEGORY_SET(c) \
- ((c) < CHAR_TABLE_SINGLE_BYTE_SLOTS \
- ? Faref (current_buffer->category_table, make_number ((unsigned char) c)) \
- : Faref (current_buffer->category_table, \
- make_number (COMPOSITE_CHAR_P (c) \
- ? cmpchar_component ((c), 0) : (c))))
+#define CATEGORY_SET(c) \
+ Faref (current_buffer->category_table, make_number (c))
#endif
/* Return the doc string of CATEGORY in category table TABLE. */
#define CATEGORY_DOCSTRING(table, category) \
- XVECTOR (Fchar_table_extra_slot (table, 0))->contents[(category) - ' ']
+ XVECTOR (Fchar_table_extra_slot (table, make_number (0)))->contents[(category) - ' ']
/* Return the version number of category table TABLE. Not used for
the moment. */
#define CATEGORY_TABLE_VERSION (table) \
- Fchar_table_extra_slot (table, 1)
+ Fchar_table_extra_slot (table, make_number (1))
/* Return 1 if there is a word boundary between two word-constituent
characters C1 and C2 if they appear in this order, else return 0.
#define WORD_BOUNDARY_P(c1, c2) \
(!(SINGLE_BYTE_CHAR_P (c1) && SINGLE_BYTE_CHAR_P (c2)) \
&& word_boundary_p (c1, c2))
+
+extern int word_boundary_p P_ ((int, int));