22 #if !defined(XERCESC_INCLUDE_GUARD_XMLCHAR_HPP)
23 #define XERCESC_INCLUDE_GUARD_XMLCHAR_HPP
51 static bool isAllSpaces
53 const XMLCh*
const toCheck
57 static bool containsWhiteSpace
59 const XMLCh*
const toCheck
63 static bool isValidNmtoken
65 const XMLCh*
const toCheck
69 static bool isValidName
71 const XMLCh*
const toCheck
75 static bool isValidName
77 const XMLCh*
const toCheck
80 static bool isValidNCName
82 const XMLCh*
const toCheck
86 static bool isValidQName
88 const XMLCh*
const toCheck
96 static bool isXMLLetter(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
97 static bool isFirstNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
98 static bool isNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
99 static bool isPlainContentChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
100 static bool isSpecialStartTagChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
101 static bool isXMLChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
102 static bool isWhitespace(
const XMLCh toCheck);
103 static bool isWhitespace(
const XMLCh toCheck,
const XMLCh toCheck2);
104 static bool isControlChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
106 static bool isPublicIdChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
107 static bool isFirstNCNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
108 static bool isNCNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
116 static bool isNELRecognized();
121 static void enableNELWS();
141 static XMLByte fgCharCharsTable1_0[0x10000];
142 static bool enableNEL;
144 friend class XMLReader;
180 return ((fgCharCharsTable1_0[toCheck] &
gNameCharMask) != 0);
196 if ((toCheck >= 0xD800) && (toCheck <= 0xDBFF))
197 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
214 return ((fgCharCharsTable1_0[toCheck] &
gXMLCharMask) != 0);
216 if ((toCheck >= 0xD800) && (toCheck <= 0xDBFF))
217 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
257 static bool isAllSpaces
259 const XMLCh*
const toCheck
263 static bool containsWhiteSpace
265 const XMLCh*
const toCheck
269 static bool isValidNmtoken
271 const XMLCh*
const toCheck
275 static bool isValidName
277 const XMLCh*
const toCheck
281 static bool isValidName
283 const XMLCh*
const toCheck
286 static bool isValidNCName
288 const XMLCh*
const toCheck
292 static bool isValidQName
294 const XMLCh*
const toCheck
301 static bool isXMLLetter(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
302 static bool isFirstNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
303 static bool isNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
304 static bool isPlainContentChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
305 static bool isSpecialStartTagChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
306 static bool isXMLChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
307 static bool isWhitespace(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
308 static bool isControlChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
310 static bool isPublicIdChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
311 static bool isFirstNCNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
312 static bool isNCNameChar(
const XMLCh toCheck,
const XMLCh toCheck2 = 0);
329 static XMLByte fgCharCharsTable1_1[0x10000];
331 friend class XMLReader;
349 if ((toCheck >= 0xD800) && (toCheck <= 0xDB7F))
350 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
362 if ((toCheck >= 0xD800) && (toCheck <= 0xDB7F))
363 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
372 return ((fgCharCharsTable1_1[toCheck] &
gNameCharMask) != 0);
374 if ((toCheck >= 0xD800) && (toCheck <= 0xDB7F))
375 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
386 if ((toCheck >= 0xD800) && (toCheck <= 0xDB7F))
387 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
398 if ((toCheck >= 0xD800) && (toCheck <= 0xDBFF))
399 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))
416 return ((fgCharCharsTable1_1[toCheck] &
gXMLCharMask) != 0);
418 if ((toCheck >= 0xD800) && (toCheck <= 0xDBFF))
419 if ((toCheck2 >= 0xDC00) && (toCheck2 <= 0xDFFF))