ReactOS  0.4.15-dev-1177-g6cb3b62
chvalid.h
Go to the documentation of this file.
1 /*
2  * Summary: Unicode character range checking
3  * Description: this module exports interfaces for the character
4  * range validation APIs
5  *
6  * This file is automatically generated from the cvs source
7  * definition files using the genChRanges.py Python script
8  *
9  * Generation date: Mon Mar 27 11:09:48 2006
10  * Sources: chvalid.def
11  * Author: William Brack <wbrack@mmm.com.hk>
12  */
13 
14 #ifndef __XML_CHVALID_H__
15 #define __XML_CHVALID_H__
16 
17 #include <libxml/xmlversion.h>
18 #include <libxml/xmlstring.h>
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 /*
25  * Define our typedefs and structures
26  *
27  */
28 typedef struct _xmlChSRange xmlChSRange;
30 struct _xmlChSRange {
31  unsigned short low;
32  unsigned short high;
33 };
34 
35 typedef struct _xmlChLRange xmlChLRange;
37 struct _xmlChLRange {
38  unsigned int low;
39  unsigned int high;
40 };
41 
47  const xmlChSRange *shortRange; /* points to an array of ranges */
49 };
50 
55  xmlCharInRange(unsigned int val, const xmlChRangeGroup *group);
56 
57 
64 #define xmlIsBaseChar_ch(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || \
65  ((0x61 <= (c)) && ((c) <= 0x7a)) || \
66  ((0xc0 <= (c)) && ((c) <= 0xd6)) || \
67  ((0xd8 <= (c)) && ((c) <= 0xf6)) || \
68  (0xf8 <= (c)))
69 
76 #define xmlIsBaseCharQ(c) (((c) < 0x100) ? \
77  xmlIsBaseChar_ch((c)) : \
78  xmlCharInRange((c), &xmlIsBaseCharGroup))
79 
81 
88 #define xmlIsBlank_ch(c) (((c) == 0x20) || \
89  ((0x9 <= (c)) && ((c) <= 0xa)) || \
90  ((c) == 0xd))
91 
98 #define xmlIsBlankQ(c) (((c) < 0x100) ? \
99  xmlIsBlank_ch((c)) : 0)
100 
101 
108 #define xmlIsChar_ch(c) (((0x9 <= (c)) && ((c) <= 0xa)) || \
109  ((c) == 0xd) || \
110  (0x20 <= (c)))
111 
118 #define xmlIsCharQ(c) (((c) < 0x100) ? \
119  xmlIsChar_ch((c)) :\
120  (((0x100 <= (c)) && ((c) <= 0xd7ff)) || \
121  ((0xe000 <= (c)) && ((c) <= 0xfffd)) || \
122  ((0x10000 <= (c)) && ((c) <= 0x10ffff))))
123 
125 
132 #define xmlIsCombiningQ(c) (((c) < 0x100) ? \
133  0 : \
134  xmlCharInRange((c), &xmlIsCombiningGroup))
135 
137 
144 #define xmlIsDigit_ch(c) (((0x30 <= (c)) && ((c) <= 0x39)))
145 
152 #define xmlIsDigitQ(c) (((c) < 0x100) ? \
153  xmlIsDigit_ch((c)) : \
154  xmlCharInRange((c), &xmlIsDigitGroup))
155 
157 
164 #define xmlIsExtender_ch(c) (((c) == 0xb7))
165 
172 #define xmlIsExtenderQ(c) (((c) < 0x100) ? \
173  xmlIsExtender_ch((c)) : \
174  xmlCharInRange((c), &xmlIsExtenderGroup))
175 
177 
184 #define xmlIsIdeographicQ(c) (((c) < 0x100) ? \
185  0 :\
186  (((0x4e00 <= (c)) && ((c) <= 0x9fa5)) || \
187  ((c) == 0x3007) || \
188  ((0x3021 <= (c)) && ((c) <= 0x3029))))
189 
191 XMLPUBVAR const unsigned char xmlIsPubidChar_tab[256];
192 
199 #define xmlIsPubidChar_ch(c) (xmlIsPubidChar_tab[(c)])
200 
207 #define xmlIsPubidCharQ(c) (((c) < 0x100) ? \
208  xmlIsPubidChar_ch((c)) : 0)
209 
210 XMLPUBFUN int XMLCALL
211  xmlIsBaseChar(unsigned int ch);
212 XMLPUBFUN int XMLCALL
213  xmlIsBlank(unsigned int ch);
214 XMLPUBFUN int XMLCALL
215  xmlIsChar(unsigned int ch);
216 XMLPUBFUN int XMLCALL
217  xmlIsCombining(unsigned int ch);
218 XMLPUBFUN int XMLCALL
219  xmlIsDigit(unsigned int ch);
220 XMLPUBFUN int XMLCALL
221  xmlIsExtender(unsigned int ch);
222 XMLPUBFUN int XMLCALL
223  xmlIsIdeographic(unsigned int ch);
224 XMLPUBFUN int XMLCALL
225  xmlIsPubidChar(unsigned int ch);
226 
227 #ifdef __cplusplus
228 }
229 #endif
230 #endif /* __XML_CHVALID_H__ */
const xmlChSRange * shortRange
Definition: chvalid.h:47
XMLPUBFUN int XMLCALL xmlIsDigit(unsigned int ch)
Definition: chvalid.c:286
XMLPUBVAR const xmlChRangeGroup xmlIsExtenderGroup
Definition: chvalid.h:176
#define XMLPUBFUN
Definition: xmlexports.h:30
XMLPUBVAR const xmlChRangeGroup xmlIsCombiningGroup
Definition: chvalid.h:136
XMLPUBFUN int XMLCALL xmlIsCombining(unsigned int ch)
Definition: chvalid.c:271
xmlChSRange * xmlChSRangePtr
Definition: chvalid.h:29
XMLPUBFUN int XMLCALL xmlIsBlank(unsigned int ch)
Definition: chvalid.c:241
const xmlChLRange * longRange
Definition: chvalid.h:48
int nbShortRange
Definition: chvalid.h:45
XMLPUBFUN int XMLCALL xmlIsIdeographic(unsigned int ch)
Definition: chvalid.c:316
GLuint GLfloat * val
Definition: glext.h:7180
XMLPUBVAR const xmlChRangeGroup xmlIsBaseCharGroup
Definition: chvalid.h:80
GLboolean GLuint group
Definition: glext.h:11120
XMLPUBFUN int XMLCALL xmlIsBaseChar(unsigned int ch)
Definition: chvalid.c:226
unsigned short high
Definition: chvalid.h:32
XMLPUBVAR const xmlChRangeGroup xmlIsIdeographicGroup
Definition: chvalid.h:190
#define XMLPUBVAR
Definition: xmlexports.h:36
XMLPUBFUN int XMLCALL xmlIsChar(unsigned int ch)
Definition: chvalid.c:256
unsigned short low
Definition: chvalid.h:31
xmlChRangeGroup * xmlChRangeGroupPtr
Definition: chvalid.h:43
xmlChLRange * xmlChLRangePtr
Definition: chvalid.h:36
XMLPUBVAR const unsigned char xmlIsPubidChar_tab[256]
Definition: chvalid.h:191
XMLPUBVAR const xmlChRangeGroup xmlIsDigitGroup
Definition: chvalid.h:156
XMLPUBFUN int XMLCALL xmlCharInRange(unsigned int val, const xmlChRangeGroup *group)
Definition: chvalid.c:168
#define XMLCALL
XMLPUBFUN int XMLCALL xmlIsPubidChar(unsigned int ch)
Definition: chvalid.c:331
unsigned int low
Definition: chvalid.h:38
XMLPUBVAR const xmlChRangeGroup xmlIsCharGroup
Definition: chvalid.h:124
unsigned int high
Definition: chvalid.h:39
XMLPUBFUN int XMLCALL xmlIsExtender(unsigned int ch)
Definition: chvalid.c:301