comparison src/chartab.c @ 5320:31be2a3d121d

Move Qcount, Q_default, Q_test to general-slots.h; add SYMBOL_KEYWORD_GENERAL() 2010-12-30 Aidan Kehoe <kehoea@parhasard.net> * elhash.c (syms_of_elhash): * chartab.c (syms_of_chartab): * abbrev.c (syms_of_abbrev): * general-slots.h: Move Qcount, Q_default, Q_test to general-slots.h, they're about to be used by other files. Rename Q_default to Q_default_, for the sake of the PARSE_KEYWORDS macro (given that default is a reserved identifier in C). Add SYMBOL_KEYWORD_GENERAL(), analogous to SYMBOL_GENERAL() to make this easier.
author Aidan Kehoe <kehoea@parhasard.net>
date Thu, 30 Dec 2010 00:50:10 +0000
parents c096d8051f89
children 6506fcb40fcf
comparison
equal deleted inserted replaced
5319:ed5d4f081fa9 5320:31be2a3d121d
40 40
41 #include "buffer.h" 41 #include "buffer.h"
42 #include "chartab.h" 42 #include "chartab.h"
43 #include "syntax.h" 43 #include "syntax.h"
44 44
45 Lisp_Object Qchar_tablep, Qchar_table, Q_default; 45 Lisp_Object Qchar_tablep, Qchar_table;
46 46
47 Lisp_Object Vall_syntax_tables; 47 Lisp_Object Vall_syntax_tables;
48 48
49 #ifdef MULE 49 #ifdef MULE
50 Lisp_Object Qcategory_table_p; 50 Lisp_Object Qcategory_table_p;
1579 } 1579 }
1580 else if (EQ (key, Q_type)) 1580 else if (EQ (key, Q_type))
1581 { 1581 {
1582 type = value; 1582 type = value;
1583 } 1583 }
1584 else if (EQ (key, Q_default)) 1584 else if (EQ (key, Q_default_))
1585 { 1585 {
1586 default_ = value; 1586 default_ = value;
1587 } 1587 }
1588 else if (!KEYWORDP (key)) 1588 else if (!KEYWORDP (key))
1589 { 1589 {
1624 if (!UNBOUNDP (default_)) 1624 if (!UNBOUNDP (default_))
1625 { 1625 {
1626 check_valid_char_table_value (default_, XCHAR_TABLE_TYPE (chartab), 1626 check_valid_char_table_value (default_, XCHAR_TABLE_TYPE (chartab),
1627 ERROR_ME); 1627 ERROR_ME);
1628 set_char_table_default (chartab, default_); 1628 set_char_table_default (chartab, default_);
1629 set_char_table_default (XCHAR_TABLE (chartab)->mirror_table, default_); 1629 if (!NILP (XCHAR_TABLE (chartab)->mirror_table))
1630 {
1631 set_char_table_default (XCHAR_TABLE (chartab)->mirror_table,
1632 default_);
1633 }
1630 } 1634 }
1631 1635
1632 while (!NILP (dataval)) 1636 while (!NILP (dataval))
1633 { 1637 {
1634 Lisp_Object range = Fcar (dataval); 1638 Lisp_Object range = Fcar (dataval);
1900 DEFSYMBOL (Qcategory_table_value_p); 1904 DEFSYMBOL (Qcategory_table_value_p);
1901 #endif /* MULE */ 1905 #endif /* MULE */
1902 1906
1903 DEFSYMBOL (Qchar_table); 1907 DEFSYMBOL (Qchar_table);
1904 DEFSYMBOL_MULTIWORD_PREDICATE (Qchar_tablep); 1908 DEFSYMBOL_MULTIWORD_PREDICATE (Qchar_tablep);
1905 DEFKEYWORD (Q_default);
1906 1909
1907 DEFSUBR (Fchar_table_p); 1910 DEFSUBR (Fchar_table_p);
1908 DEFSUBR (Fchar_table_type_list); 1911 DEFSUBR (Fchar_table_type_list);
1909 DEFSUBR (Fvalid_char_table_type_p); 1912 DEFSUBR (Fvalid_char_table_type_p);
1910 DEFSUBR (Fchar_table_type); 1913 DEFSUBR (Fchar_table_type);
1955 define_structure_type_keyword (st, Qdata, chartab_data_validate); 1958 define_structure_type_keyword (st, Qdata, chartab_data_validate);
1956 #endif /* NEED_TO_HANDLE_21_4_CODE */ 1959 #endif /* NEED_TO_HANDLE_21_4_CODE */
1957 1960
1958 define_structure_type_keyword (st, Q_type, chartab_type_validate); 1961 define_structure_type_keyword (st, Q_type, chartab_type_validate);
1959 define_structure_type_keyword (st, Q_data, chartab_data_validate); 1962 define_structure_type_keyword (st, Q_data, chartab_data_validate);
1960 define_structure_type_keyword (st, Q_default, chartab_default_validate); 1963 define_structure_type_keyword (st, Q_default_, chartab_default_validate);
1961 } 1964 }
1962 1965
1963 void 1966 void
1964 complex_vars_of_chartab (void) 1967 complex_vars_of_chartab (void)
1965 { 1968 {