Mercurial > hg > xemacs-beta
comparison src/syntax.h @ 440:8de8e3f6228a r21-2-28
Import from CVS: tag r21-2-28
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:33:38 +0200 |
parents | 3ecd8885ac67 |
children | abe6d1db359e |
comparison
equal
deleted
inserted
replaced
439:357dd071b03c | 440:8de8e3f6228a |
---|---|
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
19 Boston, MA 02111-1307, USA. */ | 19 Boston, MA 02111-1307, USA. */ |
20 | 20 |
21 /* Synched up with: FSF 19.28. */ | 21 /* Synched up with: FSF 19.28. */ |
22 | 22 |
23 #ifndef _XEMACS_SYNTAX_H_ | 23 #ifndef INCLUDED_syntax_h_ |
24 #define _XEMACS_SYNTAX_H_ | 24 #define INCLUDED_syntax_h_ |
25 | 25 |
26 #include "chartab.h" | 26 #include "chartab.h" |
27 | 27 |
28 /* A syntax table is a type of char table. | 28 /* A syntax table is a type of char table. |
29 | 29 |
70 /* Return the syntax code for a particular character and mirror table. */ | 70 /* Return the syntax code for a particular character and mirror table. */ |
71 | 71 |
72 #define SYNTAX_CODE_UNSAFE(table, c) \ | 72 #define SYNTAX_CODE_UNSAFE(table, c) \ |
73 XINT (CHAR_TABLE_VALUE_UNSAFE (table, c)) | 73 XINT (CHAR_TABLE_VALUE_UNSAFE (table, c)) |
74 | 74 |
75 INLINE int SYNTAX_CODE (struct Lisp_Char_Table *table, Emchar c); | 75 INLINE int SYNTAX_CODE (Lisp_Char_Table *table, Emchar c); |
76 INLINE int | 76 INLINE int |
77 SYNTAX_CODE (struct Lisp_Char_Table *table, Emchar c) | 77 SYNTAX_CODE (Lisp_Char_Table *table, Emchar c) |
78 { | 78 { |
79 return SYNTAX_CODE_UNSAFE (table, c); | 79 return SYNTAX_CODE_UNSAFE (table, c); |
80 } | 80 } |
81 | 81 |
82 #define SYNTAX_UNSAFE(table, c) \ | 82 #define SYNTAX_UNSAFE(table, c) \ |
83 ((enum syntaxcode) (SYNTAX_CODE_UNSAFE (table, c) & 0177)) | 83 ((enum syntaxcode) (SYNTAX_CODE_UNSAFE (table, c) & 0177)) |
84 | 84 |
85 #define SYNTAX_FROM_CODE(code) ((enum syntaxcode) ((code) & 0177)) | 85 #define SYNTAX_FROM_CODE(code) ((enum syntaxcode) ((code) & 0177)) |
86 #define SYNTAX(table, c) SYNTAX_FROM_CODE (SYNTAX_CODE (table, c)) | 86 #define SYNTAX(table, c) SYNTAX_FROM_CODE (SYNTAX_CODE (table, c)) |
87 | 87 |
88 INLINE int WORD_SYNTAX_P (struct Lisp_Char_Table *table, Emchar c); | 88 INLINE int WORD_SYNTAX_P (Lisp_Char_Table *table, Emchar c); |
89 INLINE int | 89 INLINE int |
90 WORD_SYNTAX_P (struct Lisp_Char_Table *table, Emchar c) | 90 WORD_SYNTAX_P (Lisp_Char_Table *table, Emchar c) |
91 { | 91 { |
92 return SYNTAX (table, c) == Sword; | 92 return SYNTAX (table, c) == Sword; |
93 } | 93 } |
94 | 94 |
95 /* OK, here's a graphic diagram of the format of the syntax values: | 95 /* OK, here's a graphic diagram of the format of the syntax values: |
247 Lisp_Object syntax_match (Lisp_Object table, Emchar ch); | 247 Lisp_Object syntax_match (Lisp_Object table, Emchar ch); |
248 | 248 |
249 extern int no_quit_in_re_search; | 249 extern int no_quit_in_re_search; |
250 extern struct buffer *regex_emacs_buffer; | 250 extern struct buffer *regex_emacs_buffer; |
251 | 251 |
252 void update_syntax_table (struct Lisp_Char_Table *ct); | 252 void update_syntax_table (Lisp_Char_Table *ct); |
253 | 253 |
254 #endif /* _XEMACS_SYNTAX_H_ */ | 254 #endif /* INCLUDED_syntax_h_ */ |