Annotation of embedaddon/libxml2/xmlunicode.c, revision 1.1.1.2
1.1 misho 1: /*
2: * xmlunicode.c: this module implements the Unicode character APIs
3: *
4: * This file is automatically generated from the
5: * UCS description files of the Unicode Character Database
6: * http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1.html
7: * using the genUnicode.py Python script.
8: *
9: * Generation date: Mon Mar 27 11:09:52 2006
10: * Sources: Blocks-4.0.1.txt UnicodeData-4.0.1.txt
11: * Daniel Veillard <veillard@redhat.com>
12: */
13:
14: #define IN_LIBXML
15: #include "libxml.h"
16:
17: #ifdef LIBXML_UNICODE_ENABLED
18:
19: #include <string.h>
20: #include <libxml/xmlversion.h>
21: #include <libxml/xmlunicode.h>
22: #include <libxml/chvalid.h>
23:
24: typedef int (xmlIntFunc)(int); /* just to keep one's mind untwisted */
25:
26: typedef struct {
27: const char *rangename;
28: xmlIntFunc *func;
29: } xmlUnicodeRange;
30:
31: typedef struct {
32: xmlUnicodeRange *table;
33: int numentries;
34: } xmlUnicodeNameTable;
35:
36:
37: static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname);
38:
39: static xmlUnicodeRange xmlUnicodeBlocks[] = {
40: {"AegeanNumbers", xmlUCSIsAegeanNumbers},
41: {"AlphabeticPresentationForms", xmlUCSIsAlphabeticPresentationForms},
42: {"Arabic", xmlUCSIsArabic},
43: {"ArabicPresentationForms-A", xmlUCSIsArabicPresentationFormsA},
44: {"ArabicPresentationForms-B", xmlUCSIsArabicPresentationFormsB},
45: {"Armenian", xmlUCSIsArmenian},
46: {"Arrows", xmlUCSIsArrows},
47: {"BasicLatin", xmlUCSIsBasicLatin},
48: {"Bengali", xmlUCSIsBengali},
49: {"BlockElements", xmlUCSIsBlockElements},
50: {"Bopomofo", xmlUCSIsBopomofo},
51: {"BopomofoExtended", xmlUCSIsBopomofoExtended},
52: {"BoxDrawing", xmlUCSIsBoxDrawing},
53: {"BraillePatterns", xmlUCSIsBraillePatterns},
54: {"Buhid", xmlUCSIsBuhid},
55: {"ByzantineMusicalSymbols", xmlUCSIsByzantineMusicalSymbols},
56: {"CJKCompatibility", xmlUCSIsCJKCompatibility},
57: {"CJKCompatibilityForms", xmlUCSIsCJKCompatibilityForms},
58: {"CJKCompatibilityIdeographs", xmlUCSIsCJKCompatibilityIdeographs},
59: {"CJKCompatibilityIdeographsSupplement", xmlUCSIsCJKCompatibilityIdeographsSupplement},
60: {"CJKRadicalsSupplement", xmlUCSIsCJKRadicalsSupplement},
61: {"CJKSymbolsandPunctuation", xmlUCSIsCJKSymbolsandPunctuation},
62: {"CJKUnifiedIdeographs", xmlUCSIsCJKUnifiedIdeographs},
63: {"CJKUnifiedIdeographsExtensionA", xmlUCSIsCJKUnifiedIdeographsExtensionA},
64: {"CJKUnifiedIdeographsExtensionB", xmlUCSIsCJKUnifiedIdeographsExtensionB},
65: {"Cherokee", xmlUCSIsCherokee},
66: {"CombiningDiacriticalMarks", xmlUCSIsCombiningDiacriticalMarks},
67: {"CombiningDiacriticalMarksforSymbols", xmlUCSIsCombiningDiacriticalMarksforSymbols},
68: {"CombiningHalfMarks", xmlUCSIsCombiningHalfMarks},
69: {"CombiningMarksforSymbols", xmlUCSIsCombiningMarksforSymbols},
70: {"ControlPictures", xmlUCSIsControlPictures},
71: {"CurrencySymbols", xmlUCSIsCurrencySymbols},
72: {"CypriotSyllabary", xmlUCSIsCypriotSyllabary},
73: {"Cyrillic", xmlUCSIsCyrillic},
74: {"CyrillicSupplement", xmlUCSIsCyrillicSupplement},
75: {"Deseret", xmlUCSIsDeseret},
76: {"Devanagari", xmlUCSIsDevanagari},
77: {"Dingbats", xmlUCSIsDingbats},
78: {"EnclosedAlphanumerics", xmlUCSIsEnclosedAlphanumerics},
79: {"EnclosedCJKLettersandMonths", xmlUCSIsEnclosedCJKLettersandMonths},
80: {"Ethiopic", xmlUCSIsEthiopic},
81: {"GeneralPunctuation", xmlUCSIsGeneralPunctuation},
82: {"GeometricShapes", xmlUCSIsGeometricShapes},
83: {"Georgian", xmlUCSIsGeorgian},
84: {"Gothic", xmlUCSIsGothic},
85: {"Greek", xmlUCSIsGreek},
86: {"GreekExtended", xmlUCSIsGreekExtended},
87: {"GreekandCoptic", xmlUCSIsGreekandCoptic},
88: {"Gujarati", xmlUCSIsGujarati},
89: {"Gurmukhi", xmlUCSIsGurmukhi},
90: {"HalfwidthandFullwidthForms", xmlUCSIsHalfwidthandFullwidthForms},
91: {"HangulCompatibilityJamo", xmlUCSIsHangulCompatibilityJamo},
92: {"HangulJamo", xmlUCSIsHangulJamo},
93: {"HangulSyllables", xmlUCSIsHangulSyllables},
94: {"Hanunoo", xmlUCSIsHanunoo},
95: {"Hebrew", xmlUCSIsHebrew},
96: {"HighPrivateUseSurrogates", xmlUCSIsHighPrivateUseSurrogates},
97: {"HighSurrogates", xmlUCSIsHighSurrogates},
98: {"Hiragana", xmlUCSIsHiragana},
99: {"IPAExtensions", xmlUCSIsIPAExtensions},
100: {"IdeographicDescriptionCharacters", xmlUCSIsIdeographicDescriptionCharacters},
101: {"Kanbun", xmlUCSIsKanbun},
102: {"KangxiRadicals", xmlUCSIsKangxiRadicals},
103: {"Kannada", xmlUCSIsKannada},
104: {"Katakana", xmlUCSIsKatakana},
105: {"KatakanaPhoneticExtensions", xmlUCSIsKatakanaPhoneticExtensions},
106: {"Khmer", xmlUCSIsKhmer},
107: {"KhmerSymbols", xmlUCSIsKhmerSymbols},
108: {"Lao", xmlUCSIsLao},
109: {"Latin-1Supplement", xmlUCSIsLatin1Supplement},
110: {"LatinExtended-A", xmlUCSIsLatinExtendedA},
111: {"LatinExtended-B", xmlUCSIsLatinExtendedB},
112: {"LatinExtendedAdditional", xmlUCSIsLatinExtendedAdditional},
113: {"LetterlikeSymbols", xmlUCSIsLetterlikeSymbols},
114: {"Limbu", xmlUCSIsLimbu},
115: {"LinearBIdeograms", xmlUCSIsLinearBIdeograms},
116: {"LinearBSyllabary", xmlUCSIsLinearBSyllabary},
117: {"LowSurrogates", xmlUCSIsLowSurrogates},
118: {"Malayalam", xmlUCSIsMalayalam},
119: {"MathematicalAlphanumericSymbols", xmlUCSIsMathematicalAlphanumericSymbols},
120: {"MathematicalOperators", xmlUCSIsMathematicalOperators},
121: {"MiscellaneousMathematicalSymbols-A", xmlUCSIsMiscellaneousMathematicalSymbolsA},
122: {"MiscellaneousMathematicalSymbols-B", xmlUCSIsMiscellaneousMathematicalSymbolsB},
123: {"MiscellaneousSymbols", xmlUCSIsMiscellaneousSymbols},
124: {"MiscellaneousSymbolsandArrows", xmlUCSIsMiscellaneousSymbolsandArrows},
125: {"MiscellaneousTechnical", xmlUCSIsMiscellaneousTechnical},
126: {"Mongolian", xmlUCSIsMongolian},
127: {"MusicalSymbols", xmlUCSIsMusicalSymbols},
128: {"Myanmar", xmlUCSIsMyanmar},
129: {"NumberForms", xmlUCSIsNumberForms},
130: {"Ogham", xmlUCSIsOgham},
131: {"OldItalic", xmlUCSIsOldItalic},
132: {"OpticalCharacterRecognition", xmlUCSIsOpticalCharacterRecognition},
133: {"Oriya", xmlUCSIsOriya},
134: {"Osmanya", xmlUCSIsOsmanya},
135: {"PhoneticExtensions", xmlUCSIsPhoneticExtensions},
136: {"PrivateUse", xmlUCSIsPrivateUse},
137: {"PrivateUseArea", xmlUCSIsPrivateUseArea},
138: {"Runic", xmlUCSIsRunic},
139: {"Shavian", xmlUCSIsShavian},
140: {"Sinhala", xmlUCSIsSinhala},
141: {"SmallFormVariants", xmlUCSIsSmallFormVariants},
142: {"SpacingModifierLetters", xmlUCSIsSpacingModifierLetters},
143: {"Specials", xmlUCSIsSpecials},
144: {"SuperscriptsandSubscripts", xmlUCSIsSuperscriptsandSubscripts},
145: {"SupplementalArrows-A", xmlUCSIsSupplementalArrowsA},
146: {"SupplementalArrows-B", xmlUCSIsSupplementalArrowsB},
147: {"SupplementalMathematicalOperators", xmlUCSIsSupplementalMathematicalOperators},
148: {"SupplementaryPrivateUseArea-A", xmlUCSIsSupplementaryPrivateUseAreaA},
149: {"SupplementaryPrivateUseArea-B", xmlUCSIsSupplementaryPrivateUseAreaB},
150: {"Syriac", xmlUCSIsSyriac},
151: {"Tagalog", xmlUCSIsTagalog},
152: {"Tagbanwa", xmlUCSIsTagbanwa},
153: {"Tags", xmlUCSIsTags},
154: {"TaiLe", xmlUCSIsTaiLe},
155: {"TaiXuanJingSymbols", xmlUCSIsTaiXuanJingSymbols},
156: {"Tamil", xmlUCSIsTamil},
157: {"Telugu", xmlUCSIsTelugu},
158: {"Thaana", xmlUCSIsThaana},
159: {"Thai", xmlUCSIsThai},
160: {"Tibetan", xmlUCSIsTibetan},
161: {"Ugaritic", xmlUCSIsUgaritic},
162: {"UnifiedCanadianAboriginalSyllabics", xmlUCSIsUnifiedCanadianAboriginalSyllabics},
163: {"VariationSelectors", xmlUCSIsVariationSelectors},
164: {"VariationSelectorsSupplement", xmlUCSIsVariationSelectorsSupplement},
165: {"YiRadicals", xmlUCSIsYiRadicals},
166: {"YiSyllables", xmlUCSIsYiSyllables},
167: {"YijingHexagramSymbols", xmlUCSIsYijingHexagramSymbols}};
168:
169: static xmlUnicodeRange xmlUnicodeCats[] = {
170: {"C", xmlUCSIsCatC},
171: {"Cc", xmlUCSIsCatCc},
172: {"Cf", xmlUCSIsCatCf},
173: {"Co", xmlUCSIsCatCo},
174: {"Cs", xmlUCSIsCatCs},
175: {"L", xmlUCSIsCatL},
176: {"Ll", xmlUCSIsCatLl},
177: {"Lm", xmlUCSIsCatLm},
178: {"Lo", xmlUCSIsCatLo},
179: {"Lt", xmlUCSIsCatLt},
180: {"Lu", xmlUCSIsCatLu},
181: {"M", xmlUCSIsCatM},
182: {"Mc", xmlUCSIsCatMc},
183: {"Me", xmlUCSIsCatMe},
184: {"Mn", xmlUCSIsCatMn},
185: {"N", xmlUCSIsCatN},
186: {"Nd", xmlUCSIsCatNd},
187: {"Nl", xmlUCSIsCatNl},
188: {"No", xmlUCSIsCatNo},
189: {"P", xmlUCSIsCatP},
190: {"Pc", xmlUCSIsCatPc},
191: {"Pd", xmlUCSIsCatPd},
192: {"Pe", xmlUCSIsCatPe},
193: {"Pf", xmlUCSIsCatPf},
194: {"Pi", xmlUCSIsCatPi},
195: {"Po", xmlUCSIsCatPo},
196: {"Ps", xmlUCSIsCatPs},
197: {"S", xmlUCSIsCatS},
198: {"Sc", xmlUCSIsCatSc},
199: {"Sk", xmlUCSIsCatSk},
200: {"Sm", xmlUCSIsCatSm},
201: {"So", xmlUCSIsCatSo},
202: {"Z", xmlUCSIsCatZ},
203: {"Zl", xmlUCSIsCatZl},
204: {"Zp", xmlUCSIsCatZp},
205: {"Zs", xmlUCSIsCatZs}};
206:
1.1.1.2 ! misho 207: static const xmlChSRange xmlCS[] = {{0x0, 0x1f}, {0x7f, 0x9f},
! 208: {0xad, 0xad}, {0x600, 0x603}, {0x6dd, 0x6dd}, {0x70f, 0x70f},
! 209: {0x17b4, 0x17b5}, {0x200b, 0x200f}, {0x202a, 0x202e}, {0x2060, 0x2063},
! 210: {0x206a, 0x206f}, {0xd800, 0xd800}, {0xdb7f, 0xdb80}, {0xdbff, 0xdc00},
1.1 misho 211: {0xdfff, 0xe000}, {0xf8ff, 0xf8ff}, {0xfeff, 0xfeff}, {0xfff9, 0xfffb} };
1.1.1.2 ! misho 212: static const xmlChLRange xmlCL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001},
! 213: {0xe0020, 0xe007f}, {0xf0000, 0xf0000}, {0xffffd, 0xffffd},
1.1 misho 214: {0x100000, 0x100000}, {0x10fffd, 0x10fffd} };
215: static xmlChRangeGroup xmlCG = {18,7,xmlCS,xmlCL};
216:
1.1.1.2 ! misho 217: static const xmlChSRange xmlCfS[] = {{0xad, 0xad}, {0x600, 0x603},
! 218: {0x6dd, 0x6dd}, {0x70f, 0x70f}, {0x17b4, 0x17b5}, {0x200b, 0x200f},
! 219: {0x202a, 0x202e}, {0x2060, 0x2063}, {0x206a, 0x206f}, {0xfeff, 0xfeff},
1.1 misho 220: {0xfff9, 0xfffb} };
1.1.1.2 ! misho 221: static const xmlChLRange xmlCfL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001},
1.1 misho 222: {0xe0020, 0xe007f} };
223: static xmlChRangeGroup xmlCfG = {11,3,xmlCfS,xmlCfL};
224:
1.1.1.2 ! misho 225: static const xmlChSRange xmlLS[] = {{0x41, 0x5a}, {0x61, 0x7a},
! 226: {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6},
! 227: {0xf8, 0x236}, {0x250, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4},
! 228: {0x2ee, 0x2ee}, {0x37a, 0x37a}, {0x386, 0x386}, {0x388, 0x38a},
! 229: {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3ce}, {0x3d0, 0x3f5},
! 230: {0x3f7, 0x3fb}, {0x400, 0x481}, {0x48a, 0x4ce}, {0x4d0, 0x4f5},
! 231: {0x4f8, 0x4f9}, {0x500, 0x50f}, {0x531, 0x556}, {0x559, 0x559},
! 232: {0x561, 0x587}, {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a},
! 233: {0x640, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5},
! 234: {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff},
! 235: {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x74f}, {0x780, 0x7a5},
! 236: {0x7b1, 0x7b1}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950},
! 237: {0x958, 0x961}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8},
! 238: {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd},
! 239: {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0xa05, 0xa0a},
! 240: {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33},
! 241: {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e},
! 242: {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8},
! 243: {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd},
! 244: {0xad0, 0xad0}, {0xae0, 0xae1}, {0xb05, 0xb0c}, {0xb0f, 0xb10},
! 245: {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39},
! 246: {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71},
! 247: {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95},
! 248: {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4},
! 249: {0xba8, 0xbaa}, {0xbae, 0xbb5}, {0xbb7, 0xbb9}, {0xc05, 0xc0c},
! 250: {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc33}, {0xc35, 0xc39},
! 251: {0xc60, 0xc61}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8},
! 252: {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcde, 0xcde},
! 253: {0xce0, 0xce1}, {0xd05, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd28},
! 254: {0xd2a, 0xd39}, {0xd60, 0xd61}, {0xd85, 0xd96}, {0xd9a, 0xdb1},
! 255: {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30},
! 256: {0xe32, 0xe33}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84},
! 257: {0xe87, 0xe88}, {0xe8a, 0xe8a}, {0xe8d, 0xe8d}, {0xe94, 0xe97},
! 258: {0xe99, 0xe9f}, {0xea1, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xea7},
! 259: {0xeaa, 0xeab}, {0xead, 0xeb0}, {0xeb2, 0xeb3}, {0xebd, 0xebd},
! 260: {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedd}, {0xf00, 0xf00},
! 261: {0xf40, 0xf47}, {0xf49, 0xf6a}, {0xf88, 0xf8b}, {0x1000, 0x1021},
! 262: {0x1023, 0x1027}, {0x1029, 0x102a}, {0x1050, 0x1055}, {0x10a0, 0x10c5},
! 263: {0x10d0, 0x10f8}, {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9},
! 264: {0x1200, 0x1206}, {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d},
! 265: {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286},
! 266: {0x1288, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0},
! 267: {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5},
! 268: {0x12c8, 0x12ce}, {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e},
! 269: {0x1310, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346},
! 270: {0x1348, 0x135a}, {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676},
! 271: {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711},
! 272: {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770},
! 273: {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1877},
! 274: {0x1880, 0x18a8}, {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974},
! 275: {0x1d00, 0x1d6b}, {0x1e00, 0x1e9b}, {0x1ea0, 0x1ef9}, {0x1f00, 0x1f15},
! 276: {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57},
! 277: {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d},
! 278: {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4},
! 279: {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec},
! 280: {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f},
! 281: {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115},
! 282: {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128},
! 283: {0x212a, 0x212d}, {0x212f, 0x2131}, {0x2133, 0x2139}, {0x213d, 0x213f},
! 284: {0x2145, 0x2149}, {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c},
! 285: {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff},
! 286: {0x3105, 0x312c}, {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff},
! 287: {0x3400, 0x3400}, {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5},
! 288: {0xa000, 0xa48c}, {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d},
! 289: {0xfa30, 0xfa6a}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d},
! 290: {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e},
! 291: {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d},
! 292: {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74},
! 293: {0xfe76, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe},
1.1 misho 294: {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc} };
1.1.1.2 ! misho 295: static const xmlChLRange xmlLL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026},
! 296: {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d},
! 297: {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e},
! 298: {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10400, 0x1049d},
! 299: {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835},
! 300: {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f},
! 301: {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f},
! 302: {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac},
! 303: {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3},
! 304: {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514},
! 305: {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e},
! 306: {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550},
! 307: {0x1d552, 0x1d6a3}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da},
! 308: {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734},
! 309: {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788},
! 310: {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9},
1.1 misho 311: {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} };
312: static xmlChRangeGroup xmlLG = {279,50,xmlLS,xmlLL};
313:
1.1.1.2 ! misho 314: static const xmlChSRange xmlLlS[] = {{0x61, 0x7a}, {0xaa, 0xaa},
! 315: {0xb5, 0xb5}, {0xba, 0xba}, {0xdf, 0xf6}, {0xf8, 0xff}, {0x101, 0x101},
! 316: {0x103, 0x103}, {0x105, 0x105}, {0x107, 0x107}, {0x109, 0x109},
! 317: {0x10b, 0x10b}, {0x10d, 0x10d}, {0x10f, 0x10f}, {0x111, 0x111},
! 318: {0x113, 0x113}, {0x115, 0x115}, {0x117, 0x117}, {0x119, 0x119},
! 319: {0x11b, 0x11b}, {0x11d, 0x11d}, {0x11f, 0x11f}, {0x121, 0x121},
! 320: {0x123, 0x123}, {0x125, 0x125}, {0x127, 0x127}, {0x129, 0x129},
! 321: {0x12b, 0x12b}, {0x12d, 0x12d}, {0x12f, 0x12f}, {0x131, 0x131},
! 322: {0x133, 0x133}, {0x135, 0x135}, {0x137, 0x138}, {0x13a, 0x13a},
! 323: {0x13c, 0x13c}, {0x13e, 0x13e}, {0x140, 0x140}, {0x142, 0x142},
! 324: {0x144, 0x144}, {0x146, 0x146}, {0x148, 0x149}, {0x14b, 0x14b},
! 325: {0x14d, 0x14d}, {0x14f, 0x14f}, {0x151, 0x151}, {0x153, 0x153},
! 326: {0x155, 0x155}, {0x157, 0x157}, {0x159, 0x159}, {0x15b, 0x15b},
! 327: {0x15d, 0x15d}, {0x15f, 0x15f}, {0x161, 0x161}, {0x163, 0x163},
! 328: {0x165, 0x165}, {0x167, 0x167}, {0x169, 0x169}, {0x16b, 0x16b},
! 329: {0x16d, 0x16d}, {0x16f, 0x16f}, {0x171, 0x171}, {0x173, 0x173},
! 330: {0x175, 0x175}, {0x177, 0x177}, {0x17a, 0x17a}, {0x17c, 0x17c},
! 331: {0x17e, 0x180}, {0x183, 0x183}, {0x185, 0x185}, {0x188, 0x188},
! 332: {0x18c, 0x18d}, {0x192, 0x192}, {0x195, 0x195}, {0x199, 0x19b},
! 333: {0x19e, 0x19e}, {0x1a1, 0x1a1}, {0x1a3, 0x1a3}, {0x1a5, 0x1a5},
! 334: {0x1a8, 0x1a8}, {0x1aa, 0x1ab}, {0x1ad, 0x1ad}, {0x1b0, 0x1b0},
! 335: {0x1b4, 0x1b4}, {0x1b6, 0x1b6}, {0x1b9, 0x1ba}, {0x1bd, 0x1bf},
! 336: {0x1c6, 0x1c6}, {0x1c9, 0x1c9}, {0x1cc, 0x1cc}, {0x1ce, 0x1ce},
! 337: {0x1d0, 0x1d0}, {0x1d2, 0x1d2}, {0x1d4, 0x1d4}, {0x1d6, 0x1d6},
! 338: {0x1d8, 0x1d8}, {0x1da, 0x1da}, {0x1dc, 0x1dd}, {0x1df, 0x1df},
! 339: {0x1e1, 0x1e1}, {0x1e3, 0x1e3}, {0x1e5, 0x1e5}, {0x1e7, 0x1e7},
! 340: {0x1e9, 0x1e9}, {0x1eb, 0x1eb}, {0x1ed, 0x1ed}, {0x1ef, 0x1f0},
! 341: {0x1f3, 0x1f3}, {0x1f5, 0x1f5}, {0x1f9, 0x1f9}, {0x1fb, 0x1fb},
! 342: {0x1fd, 0x1fd}, {0x1ff, 0x1ff}, {0x201, 0x201}, {0x203, 0x203},
! 343: {0x205, 0x205}, {0x207, 0x207}, {0x209, 0x209}, {0x20b, 0x20b},
! 344: {0x20d, 0x20d}, {0x20f, 0x20f}, {0x211, 0x211}, {0x213, 0x213},
! 345: {0x215, 0x215}, {0x217, 0x217}, {0x219, 0x219}, {0x21b, 0x21b},
! 346: {0x21d, 0x21d}, {0x21f, 0x21f}, {0x221, 0x221}, {0x223, 0x223},
! 347: {0x225, 0x225}, {0x227, 0x227}, {0x229, 0x229}, {0x22b, 0x22b},
! 348: {0x22d, 0x22d}, {0x22f, 0x22f}, {0x231, 0x231}, {0x233, 0x236},
! 349: {0x250, 0x2af}, {0x390, 0x390}, {0x3ac, 0x3ce}, {0x3d0, 0x3d1},
! 350: {0x3d5, 0x3d7}, {0x3d9, 0x3d9}, {0x3db, 0x3db}, {0x3dd, 0x3dd},
! 351: {0x3df, 0x3df}, {0x3e1, 0x3e1}, {0x3e3, 0x3e3}, {0x3e5, 0x3e5},
! 352: {0x3e7, 0x3e7}, {0x3e9, 0x3e9}, {0x3eb, 0x3eb}, {0x3ed, 0x3ed},
! 353: {0x3ef, 0x3f3}, {0x3f5, 0x3f5}, {0x3f8, 0x3f8}, {0x3fb, 0x3fb},
! 354: {0x430, 0x45f}, {0x461, 0x461}, {0x463, 0x463}, {0x465, 0x465},
! 355: {0x467, 0x467}, {0x469, 0x469}, {0x46b, 0x46b}, {0x46d, 0x46d},
! 356: {0x46f, 0x46f}, {0x471, 0x471}, {0x473, 0x473}, {0x475, 0x475},
! 357: {0x477, 0x477}, {0x479, 0x479}, {0x47b, 0x47b}, {0x47d, 0x47d},
! 358: {0x47f, 0x47f}, {0x481, 0x481}, {0x48b, 0x48b}, {0x48d, 0x48d},
! 359: {0x48f, 0x48f}, {0x491, 0x491}, {0x493, 0x493}, {0x495, 0x495},
! 360: {0x497, 0x497}, {0x499, 0x499}, {0x49b, 0x49b}, {0x49d, 0x49d},
! 361: {0x49f, 0x49f}, {0x4a1, 0x4a1}, {0x4a3, 0x4a3}, {0x4a5, 0x4a5},
! 362: {0x4a7, 0x4a7}, {0x4a9, 0x4a9}, {0x4ab, 0x4ab}, {0x4ad, 0x4ad},
! 363: {0x4af, 0x4af}, {0x4b1, 0x4b1}, {0x4b3, 0x4b3}, {0x4b5, 0x4b5},
! 364: {0x4b7, 0x4b7}, {0x4b9, 0x4b9}, {0x4bb, 0x4bb}, {0x4bd, 0x4bd},
! 365: {0x4bf, 0x4bf}, {0x4c2, 0x4c2}, {0x4c4, 0x4c4}, {0x4c6, 0x4c6},
! 366: {0x4c8, 0x4c8}, {0x4ca, 0x4ca}, {0x4cc, 0x4cc}, {0x4ce, 0x4ce},
! 367: {0x4d1, 0x4d1}, {0x4d3, 0x4d3}, {0x4d5, 0x4d5}, {0x4d7, 0x4d7},
! 368: {0x4d9, 0x4d9}, {0x4db, 0x4db}, {0x4dd, 0x4dd}, {0x4df, 0x4df},
! 369: {0x4e1, 0x4e1}, {0x4e3, 0x4e3}, {0x4e5, 0x4e5}, {0x4e7, 0x4e7},
! 370: {0x4e9, 0x4e9}, {0x4eb, 0x4eb}, {0x4ed, 0x4ed}, {0x4ef, 0x4ef},
! 371: {0x4f1, 0x4f1}, {0x4f3, 0x4f3}, {0x4f5, 0x4f5}, {0x4f9, 0x4f9},
! 372: {0x501, 0x501}, {0x503, 0x503}, {0x505, 0x505}, {0x507, 0x507},
! 373: {0x509, 0x509}, {0x50b, 0x50b}, {0x50d, 0x50d}, {0x50f, 0x50f},
! 374: {0x561, 0x587}, {0x1d00, 0x1d2b}, {0x1d62, 0x1d6b}, {0x1e01, 0x1e01},
! 375: {0x1e03, 0x1e03}, {0x1e05, 0x1e05}, {0x1e07, 0x1e07}, {0x1e09, 0x1e09},
! 376: {0x1e0b, 0x1e0b}, {0x1e0d, 0x1e0d}, {0x1e0f, 0x1e0f}, {0x1e11, 0x1e11},
! 377: {0x1e13, 0x1e13}, {0x1e15, 0x1e15}, {0x1e17, 0x1e17}, {0x1e19, 0x1e19},
! 378: {0x1e1b, 0x1e1b}, {0x1e1d, 0x1e1d}, {0x1e1f, 0x1e1f}, {0x1e21, 0x1e21},
! 379: {0x1e23, 0x1e23}, {0x1e25, 0x1e25}, {0x1e27, 0x1e27}, {0x1e29, 0x1e29},
! 380: {0x1e2b, 0x1e2b}, {0x1e2d, 0x1e2d}, {0x1e2f, 0x1e2f}, {0x1e31, 0x1e31},
! 381: {0x1e33, 0x1e33}, {0x1e35, 0x1e35}, {0x1e37, 0x1e37}, {0x1e39, 0x1e39},
! 382: {0x1e3b, 0x1e3b}, {0x1e3d, 0x1e3d}, {0x1e3f, 0x1e3f}, {0x1e41, 0x1e41},
! 383: {0x1e43, 0x1e43}, {0x1e45, 0x1e45}, {0x1e47, 0x1e47}, {0x1e49, 0x1e49},
! 384: {0x1e4b, 0x1e4b}, {0x1e4d, 0x1e4d}, {0x1e4f, 0x1e4f}, {0x1e51, 0x1e51},
! 385: {0x1e53, 0x1e53}, {0x1e55, 0x1e55}, {0x1e57, 0x1e57}, {0x1e59, 0x1e59},
! 386: {0x1e5b, 0x1e5b}, {0x1e5d, 0x1e5d}, {0x1e5f, 0x1e5f}, {0x1e61, 0x1e61},
! 387: {0x1e63, 0x1e63}, {0x1e65, 0x1e65}, {0x1e67, 0x1e67}, {0x1e69, 0x1e69},
! 388: {0x1e6b, 0x1e6b}, {0x1e6d, 0x1e6d}, {0x1e6f, 0x1e6f}, {0x1e71, 0x1e71},
! 389: {0x1e73, 0x1e73}, {0x1e75, 0x1e75}, {0x1e77, 0x1e77}, {0x1e79, 0x1e79},
! 390: {0x1e7b, 0x1e7b}, {0x1e7d, 0x1e7d}, {0x1e7f, 0x1e7f}, {0x1e81, 0x1e81},
! 391: {0x1e83, 0x1e83}, {0x1e85, 0x1e85}, {0x1e87, 0x1e87}, {0x1e89, 0x1e89},
! 392: {0x1e8b, 0x1e8b}, {0x1e8d, 0x1e8d}, {0x1e8f, 0x1e8f}, {0x1e91, 0x1e91},
! 393: {0x1e93, 0x1e93}, {0x1e95, 0x1e9b}, {0x1ea1, 0x1ea1}, {0x1ea3, 0x1ea3},
! 394: {0x1ea5, 0x1ea5}, {0x1ea7, 0x1ea7}, {0x1ea9, 0x1ea9}, {0x1eab, 0x1eab},
! 395: {0x1ead, 0x1ead}, {0x1eaf, 0x1eaf}, {0x1eb1, 0x1eb1}, {0x1eb3, 0x1eb3},
! 396: {0x1eb5, 0x1eb5}, {0x1eb7, 0x1eb7}, {0x1eb9, 0x1eb9}, {0x1ebb, 0x1ebb},
! 397: {0x1ebd, 0x1ebd}, {0x1ebf, 0x1ebf}, {0x1ec1, 0x1ec1}, {0x1ec3, 0x1ec3},
! 398: {0x1ec5, 0x1ec5}, {0x1ec7, 0x1ec7}, {0x1ec9, 0x1ec9}, {0x1ecb, 0x1ecb},
! 399: {0x1ecd, 0x1ecd}, {0x1ecf, 0x1ecf}, {0x1ed1, 0x1ed1}, {0x1ed3, 0x1ed3},
! 400: {0x1ed5, 0x1ed5}, {0x1ed7, 0x1ed7}, {0x1ed9, 0x1ed9}, {0x1edb, 0x1edb},
! 401: {0x1edd, 0x1edd}, {0x1edf, 0x1edf}, {0x1ee1, 0x1ee1}, {0x1ee3, 0x1ee3},
! 402: {0x1ee5, 0x1ee5}, {0x1ee7, 0x1ee7}, {0x1ee9, 0x1ee9}, {0x1eeb, 0x1eeb},
! 403: {0x1eed, 0x1eed}, {0x1eef, 0x1eef}, {0x1ef1, 0x1ef1}, {0x1ef3, 0x1ef3},
! 404: {0x1ef5, 0x1ef5}, {0x1ef7, 0x1ef7}, {0x1ef9, 0x1ef9}, {0x1f00, 0x1f07},
! 405: {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45},
! 406: {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87},
! 407: {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7},
! 408: {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3},
! 409: {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7},
! 410: {0x2071, 0x2071}, {0x207f, 0x207f}, {0x210a, 0x210a}, {0x210e, 0x210f},
! 411: {0x2113, 0x2113}, {0x212f, 0x212f}, {0x2134, 0x2134}, {0x2139, 0x2139},
! 412: {0x213d, 0x213d}, {0x2146, 0x2149}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17},
1.1 misho 413: {0xff41, 0xff5a} };
1.1.1.2 ! misho 414: static const xmlChLRange xmlLlL[] = {{0x10428, 0x1044f}, {0x1d41a, 0x1d433},
! 415: {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b},
! 416: {0x1d4b6, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3},
! 417: {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537},
! 418: {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3},
! 419: {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f},
! 420: {0x1d68a, 0x1d6a3}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1},
! 421: {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e},
! 422: {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f},
1.1 misho 423: {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9} };
424: static xmlChRangeGroup xmlLlG = {396,28,xmlLlS,xmlLlL};
425:
1.1.1.2 ! misho 426: static const xmlChSRange xmlLmS[] = {{0x2b0, 0x2c1}, {0x2c6, 0x2d1},
! 427: {0x2e0, 0x2e4}, {0x2ee, 0x2ee}, {0x37a, 0x37a}, {0x559, 0x559},
! 428: {0x640, 0x640}, {0x6e5, 0x6e6}, {0xe46, 0xe46}, {0xec6, 0xec6},
! 429: {0x17d7, 0x17d7}, {0x1843, 0x1843}, {0x1d2c, 0x1d61}, {0x3005, 0x3005},
! 430: {0x3031, 0x3035}, {0x303b, 0x303b}, {0x309d, 0x309e}, {0x30fc, 0x30fe},
1.1 misho 431: {0xff70, 0xff70}, {0xff9e, 0xff9f} };
432: static xmlChRangeGroup xmlLmG = {20,0,xmlLmS,NULL};
433:
1.1.1.2 ! misho 434: static const xmlChSRange xmlLoS[] = {{0x1bb, 0x1bb}, {0x1c0, 0x1c3},
! 435: {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a}, {0x641, 0x64a},
! 436: {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6ee, 0x6ef},
! 437: {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f},
! 438: {0x74d, 0x74f}, {0x780, 0x7a5}, {0x7b1, 0x7b1}, {0x904, 0x939},
! 439: {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x985, 0x98c},
! 440: {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2},
! 441: {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9dc, 0x9dd}, {0x9df, 0x9e1},
! 442: {0x9f0, 0x9f1}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28},
! 443: {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39},
! 444: {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d},
! 445: {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3},
! 446: {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1},
! 447: {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30},
! 448: {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d},
! 449: {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a},
! 450: {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c},
! 451: {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb5},
! 452: {0xbb7, 0xbb9}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28},
! 453: {0xc2a, 0xc33}, {0xc35, 0xc39}, {0xc60, 0xc61}, {0xc85, 0xc8c},
! 454: {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9},
! 455: {0xcbd, 0xcbd}, {0xcde, 0xcde}, {0xce0, 0xce1}, {0xd05, 0xd0c},
! 456: {0xd0e, 0xd10}, {0xd12, 0xd28}, {0xd2a, 0xd39}, {0xd60, 0xd61},
! 457: {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd},
! 458: {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, {0xe40, 0xe45},
! 459: {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe87, 0xe88}, {0xe8a, 0xe8a},
! 460: {0xe8d, 0xe8d}, {0xe94, 0xe97}, {0xe99, 0xe9f}, {0xea1, 0xea3},
! 461: {0xea5, 0xea5}, {0xea7, 0xea7}, {0xeaa, 0xeab}, {0xead, 0xeb0},
! 462: {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xedc, 0xedd},
! 463: {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6a}, {0xf88, 0xf8b},
! 464: {0x1000, 0x1021}, {0x1023, 0x1027}, {0x1029, 0x102a}, {0x1050, 0x1055},
! 465: {0x10d0, 0x10f8}, {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9},
! 466: {0x1200, 0x1206}, {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d},
! 467: {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286},
! 468: {0x1288, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0},
! 469: {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5},
! 470: {0x12c8, 0x12ce}, {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e},
! 471: {0x1310, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346},
! 472: {0x1348, 0x135a}, {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676},
! 473: {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711},
! 474: {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770},
! 475: {0x1780, 0x17b3}, {0x17dc, 0x17dc}, {0x1820, 0x1842}, {0x1844, 0x1877},
! 476: {0x1880, 0x18a8}, {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974},
! 477: {0x2135, 0x2138}, {0x3006, 0x3006}, {0x303c, 0x303c}, {0x3041, 0x3096},
! 478: {0x309f, 0x309f}, {0x30a1, 0x30fa}, {0x30ff, 0x30ff}, {0x3105, 0x312c},
! 479: {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff}, {0x3400, 0x3400},
! 480: {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5}, {0xa000, 0xa48c},
! 481: {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d}, {0xfa30, 0xfa6a},
! 482: {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c},
! 483: {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1},
! 484: {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb},
! 485: {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff66, 0xff6f}, {0xff71, 0xff9d},
! 486: {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7},
1.1 misho 487: {0xffda, 0xffdc} };
1.1.1.2 ! misho 488: static const xmlChLRange xmlLoL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026},
! 489: {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d},
! 490: {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e},
! 491: {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10450, 0x1049d},
! 492: {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835},
! 493: {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f},
1.1 misho 494: {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} };
495: static xmlChRangeGroup xmlLoG = {211,20,xmlLoS,xmlLoL};
496:
1.1.1.2 ! misho 497: static const xmlChSRange xmlLtS[] = {{0x1c5, 0x1c5}, {0x1c8, 0x1c8},
! 498: {0x1cb, 0x1cb}, {0x1f2, 0x1f2}, {0x1f88, 0x1f8f}, {0x1f98, 0x1f9f},
1.1 misho 499: {0x1fa8, 0x1faf}, {0x1fbc, 0x1fbc}, {0x1fcc, 0x1fcc}, {0x1ffc, 0x1ffc} };
500: static xmlChRangeGroup xmlLtG = {10,0,xmlLtS,NULL};
501:
1.1.1.2 ! misho 502: static const xmlChSRange xmlLuS[] = {{0x41, 0x5a}, {0xc0, 0xd6},
! 503: {0xd8, 0xde}, {0x100, 0x100}, {0x102, 0x102}, {0x104, 0x104},
! 504: {0x106, 0x106}, {0x108, 0x108}, {0x10a, 0x10a}, {0x10c, 0x10c},
! 505: {0x10e, 0x10e}, {0x110, 0x110}, {0x112, 0x112}, {0x114, 0x114},
! 506: {0x116, 0x116}, {0x118, 0x118}, {0x11a, 0x11a}, {0x11c, 0x11c},
! 507: {0x11e, 0x11e}, {0x120, 0x120}, {0x122, 0x122}, {0x124, 0x124},
! 508: {0x126, 0x126}, {0x128, 0x128}, {0x12a, 0x12a}, {0x12c, 0x12c},
! 509: {0x12e, 0x12e}, {0x130, 0x130}, {0x132, 0x132}, {0x134, 0x134},
! 510: {0x136, 0x136}, {0x139, 0x139}, {0x13b, 0x13b}, {0x13d, 0x13d},
! 511: {0x13f, 0x13f}, {0x141, 0x141}, {0x143, 0x143}, {0x145, 0x145},
! 512: {0x147, 0x147}, {0x14a, 0x14a}, {0x14c, 0x14c}, {0x14e, 0x14e},
! 513: {0x150, 0x150}, {0x152, 0x152}, {0x154, 0x154}, {0x156, 0x156},
! 514: {0x158, 0x158}, {0x15a, 0x15a}, {0x15c, 0x15c}, {0x15e, 0x15e},
! 515: {0x160, 0x160}, {0x162, 0x162}, {0x164, 0x164}, {0x166, 0x166},
! 516: {0x168, 0x168}, {0x16a, 0x16a}, {0x16c, 0x16c}, {0x16e, 0x16e},
! 517: {0x170, 0x170}, {0x172, 0x172}, {0x174, 0x174}, {0x176, 0x176},
! 518: {0x178, 0x179}, {0x17b, 0x17b}, {0x17d, 0x17d}, {0x181, 0x182},
! 519: {0x184, 0x184}, {0x186, 0x187}, {0x189, 0x18b}, {0x18e, 0x191},
! 520: {0x193, 0x194}, {0x196, 0x198}, {0x19c, 0x19d}, {0x19f, 0x1a0},
! 521: {0x1a2, 0x1a2}, {0x1a4, 0x1a4}, {0x1a6, 0x1a7}, {0x1a9, 0x1a9},
! 522: {0x1ac, 0x1ac}, {0x1ae, 0x1af}, {0x1b1, 0x1b3}, {0x1b5, 0x1b5},
! 523: {0x1b7, 0x1b8}, {0x1bc, 0x1bc}, {0x1c4, 0x1c4}, {0x1c7, 0x1c7},
! 524: {0x1ca, 0x1ca}, {0x1cd, 0x1cd}, {0x1cf, 0x1cf}, {0x1d1, 0x1d1},
! 525: {0x1d3, 0x1d3}, {0x1d5, 0x1d5}, {0x1d7, 0x1d7}, {0x1d9, 0x1d9},
! 526: {0x1db, 0x1db}, {0x1de, 0x1de}, {0x1e0, 0x1e0}, {0x1e2, 0x1e2},
! 527: {0x1e4, 0x1e4}, {0x1e6, 0x1e6}, {0x1e8, 0x1e8}, {0x1ea, 0x1ea},
! 528: {0x1ec, 0x1ec}, {0x1ee, 0x1ee}, {0x1f1, 0x1f1}, {0x1f4, 0x1f4},
! 529: {0x1f6, 0x1f8}, {0x1fa, 0x1fa}, {0x1fc, 0x1fc}, {0x1fe, 0x1fe},
! 530: {0x200, 0x200}, {0x202, 0x202}, {0x204, 0x204}, {0x206, 0x206},
! 531: {0x208, 0x208}, {0x20a, 0x20a}, {0x20c, 0x20c}, {0x20e, 0x20e},
! 532: {0x210, 0x210}, {0x212, 0x212}, {0x214, 0x214}, {0x216, 0x216},
! 533: {0x218, 0x218}, {0x21a, 0x21a}, {0x21c, 0x21c}, {0x21e, 0x21e},
! 534: {0x220, 0x220}, {0x222, 0x222}, {0x224, 0x224}, {0x226, 0x226},
! 535: {0x228, 0x228}, {0x22a, 0x22a}, {0x22c, 0x22c}, {0x22e, 0x22e},
! 536: {0x230, 0x230}, {0x232, 0x232}, {0x386, 0x386}, {0x388, 0x38a},
! 537: {0x38c, 0x38c}, {0x38e, 0x38f}, {0x391, 0x3a1}, {0x3a3, 0x3ab},
! 538: {0x3d2, 0x3d4}, {0x3d8, 0x3d8}, {0x3da, 0x3da}, {0x3dc, 0x3dc},
! 539: {0x3de, 0x3de}, {0x3e0, 0x3e0}, {0x3e2, 0x3e2}, {0x3e4, 0x3e4},
! 540: {0x3e6, 0x3e6}, {0x3e8, 0x3e8}, {0x3ea, 0x3ea}, {0x3ec, 0x3ec},
! 541: {0x3ee, 0x3ee}, {0x3f4, 0x3f4}, {0x3f7, 0x3f7}, {0x3f9, 0x3fa},
! 542: {0x400, 0x42f}, {0x460, 0x460}, {0x462, 0x462}, {0x464, 0x464},
! 543: {0x466, 0x466}, {0x468, 0x468}, {0x46a, 0x46a}, {0x46c, 0x46c},
! 544: {0x46e, 0x46e}, {0x470, 0x470}, {0x472, 0x472}, {0x474, 0x474},
! 545: {0x476, 0x476}, {0x478, 0x478}, {0x47a, 0x47a}, {0x47c, 0x47c},
! 546: {0x47e, 0x47e}, {0x480, 0x480}, {0x48a, 0x48a}, {0x48c, 0x48c},
! 547: {0x48e, 0x48e}, {0x490, 0x490}, {0x492, 0x492}, {0x494, 0x494},
! 548: {0x496, 0x496}, {0x498, 0x498}, {0x49a, 0x49a}, {0x49c, 0x49c},
! 549: {0x49e, 0x49e}, {0x4a0, 0x4a0}, {0x4a2, 0x4a2}, {0x4a4, 0x4a4},
! 550: {0x4a6, 0x4a6}, {0x4a8, 0x4a8}, {0x4aa, 0x4aa}, {0x4ac, 0x4ac},
! 551: {0x4ae, 0x4ae}, {0x4b0, 0x4b0}, {0x4b2, 0x4b2}, {0x4b4, 0x4b4},
! 552: {0x4b6, 0x4b6}, {0x4b8, 0x4b8}, {0x4ba, 0x4ba}, {0x4bc, 0x4bc},
! 553: {0x4be, 0x4be}, {0x4c0, 0x4c1}, {0x4c3, 0x4c3}, {0x4c5, 0x4c5},
! 554: {0x4c7, 0x4c7}, {0x4c9, 0x4c9}, {0x4cb, 0x4cb}, {0x4cd, 0x4cd},
! 555: {0x4d0, 0x4d0}, {0x4d2, 0x4d2}, {0x4d4, 0x4d4}, {0x4d6, 0x4d6},
! 556: {0x4d8, 0x4d8}, {0x4da, 0x4da}, {0x4dc, 0x4dc}, {0x4de, 0x4de},
! 557: {0x4e0, 0x4e0}, {0x4e2, 0x4e2}, {0x4e4, 0x4e4}, {0x4e6, 0x4e6},
! 558: {0x4e8, 0x4e8}, {0x4ea, 0x4ea}, {0x4ec, 0x4ec}, {0x4ee, 0x4ee},
! 559: {0x4f0, 0x4f0}, {0x4f2, 0x4f2}, {0x4f4, 0x4f4}, {0x4f8, 0x4f8},
! 560: {0x500, 0x500}, {0x502, 0x502}, {0x504, 0x504}, {0x506, 0x506},
! 561: {0x508, 0x508}, {0x50a, 0x50a}, {0x50c, 0x50c}, {0x50e, 0x50e},
! 562: {0x531, 0x556}, {0x10a0, 0x10c5}, {0x1e00, 0x1e00}, {0x1e02, 0x1e02},
! 563: {0x1e04, 0x1e04}, {0x1e06, 0x1e06}, {0x1e08, 0x1e08}, {0x1e0a, 0x1e0a},
! 564: {0x1e0c, 0x1e0c}, {0x1e0e, 0x1e0e}, {0x1e10, 0x1e10}, {0x1e12, 0x1e12},
! 565: {0x1e14, 0x1e14}, {0x1e16, 0x1e16}, {0x1e18, 0x1e18}, {0x1e1a, 0x1e1a},
! 566: {0x1e1c, 0x1e1c}, {0x1e1e, 0x1e1e}, {0x1e20, 0x1e20}, {0x1e22, 0x1e22},
! 567: {0x1e24, 0x1e24}, {0x1e26, 0x1e26}, {0x1e28, 0x1e28}, {0x1e2a, 0x1e2a},
! 568: {0x1e2c, 0x1e2c}, {0x1e2e, 0x1e2e}, {0x1e30, 0x1e30}, {0x1e32, 0x1e32},
! 569: {0x1e34, 0x1e34}, {0x1e36, 0x1e36}, {0x1e38, 0x1e38}, {0x1e3a, 0x1e3a},
! 570: {0x1e3c, 0x1e3c}, {0x1e3e, 0x1e3e}, {0x1e40, 0x1e40}, {0x1e42, 0x1e42},
! 571: {0x1e44, 0x1e44}, {0x1e46, 0x1e46}, {0x1e48, 0x1e48}, {0x1e4a, 0x1e4a},
! 572: {0x1e4c, 0x1e4c}, {0x1e4e, 0x1e4e}, {0x1e50, 0x1e50}, {0x1e52, 0x1e52},
! 573: {0x1e54, 0x1e54}, {0x1e56, 0x1e56}, {0x1e58, 0x1e58}, {0x1e5a, 0x1e5a},
! 574: {0x1e5c, 0x1e5c}, {0x1e5e, 0x1e5e}, {0x1e60, 0x1e60}, {0x1e62, 0x1e62},
! 575: {0x1e64, 0x1e64}, {0x1e66, 0x1e66}, {0x1e68, 0x1e68}, {0x1e6a, 0x1e6a},
! 576: {0x1e6c, 0x1e6c}, {0x1e6e, 0x1e6e}, {0x1e70, 0x1e70}, {0x1e72, 0x1e72},
! 577: {0x1e74, 0x1e74}, {0x1e76, 0x1e76}, {0x1e78, 0x1e78}, {0x1e7a, 0x1e7a},
! 578: {0x1e7c, 0x1e7c}, {0x1e7e, 0x1e7e}, {0x1e80, 0x1e80}, {0x1e82, 0x1e82},
! 579: {0x1e84, 0x1e84}, {0x1e86, 0x1e86}, {0x1e88, 0x1e88}, {0x1e8a, 0x1e8a},
! 580: {0x1e8c, 0x1e8c}, {0x1e8e, 0x1e8e}, {0x1e90, 0x1e90}, {0x1e92, 0x1e92},
! 581: {0x1e94, 0x1e94}, {0x1ea0, 0x1ea0}, {0x1ea2, 0x1ea2}, {0x1ea4, 0x1ea4},
! 582: {0x1ea6, 0x1ea6}, {0x1ea8, 0x1ea8}, {0x1eaa, 0x1eaa}, {0x1eac, 0x1eac},
! 583: {0x1eae, 0x1eae}, {0x1eb0, 0x1eb0}, {0x1eb2, 0x1eb2}, {0x1eb4, 0x1eb4},
! 584: {0x1eb6, 0x1eb6}, {0x1eb8, 0x1eb8}, {0x1eba, 0x1eba}, {0x1ebc, 0x1ebc},
! 585: {0x1ebe, 0x1ebe}, {0x1ec0, 0x1ec0}, {0x1ec2, 0x1ec2}, {0x1ec4, 0x1ec4},
! 586: {0x1ec6, 0x1ec6}, {0x1ec8, 0x1ec8}, {0x1eca, 0x1eca}, {0x1ecc, 0x1ecc},
! 587: {0x1ece, 0x1ece}, {0x1ed0, 0x1ed0}, {0x1ed2, 0x1ed2}, {0x1ed4, 0x1ed4},
! 588: {0x1ed6, 0x1ed6}, {0x1ed8, 0x1ed8}, {0x1eda, 0x1eda}, {0x1edc, 0x1edc},
! 589: {0x1ede, 0x1ede}, {0x1ee0, 0x1ee0}, {0x1ee2, 0x1ee2}, {0x1ee4, 0x1ee4},
! 590: {0x1ee6, 0x1ee6}, {0x1ee8, 0x1ee8}, {0x1eea, 0x1eea}, {0x1eec, 0x1eec},
! 591: {0x1eee, 0x1eee}, {0x1ef0, 0x1ef0}, {0x1ef2, 0x1ef2}, {0x1ef4, 0x1ef4},
! 592: {0x1ef6, 0x1ef6}, {0x1ef8, 0x1ef8}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d},
! 593: {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f59, 0x1f59},
! 594: {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f5f}, {0x1f68, 0x1f6f},
! 595: {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec},
! 596: {0x1ff8, 0x1ffb}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210b, 0x210d},
! 597: {0x2110, 0x2112}, {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124},
! 598: {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, {0x2130, 0x2131},
1.1 misho 599: {0x2133, 0x2133}, {0x213e, 0x213f}, {0x2145, 0x2145}, {0xff21, 0xff3a} };
1.1.1.2 ! misho 600: static const xmlChLRange xmlLuL[] = {{0x10400, 0x10427}, {0x1d400, 0x1d419},
! 601: {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49c, 0x1d49c},
! 602: {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6},
! 603: {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9},
! 604: {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514},
! 605: {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e},
! 606: {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550},
! 607: {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed},
! 608: {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689},
! 609: {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734},
1.1 misho 610: {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8} };
611: static xmlChRangeGroup xmlLuG = {390,31,xmlLuS,xmlLuL};
612:
1.1.1.2 ! misho 613: static const xmlChSRange xmlMS[] = {{0x300, 0x357}, {0x35d, 0x36f},
! 614: {0x483, 0x486}, {0x488, 0x489}, {0x591, 0x5a1}, {0x5a3, 0x5b9},
! 615: {0x5bb, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4},
! 616: {0x610, 0x615}, {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc},
! 617: {0x6de, 0x6e4}, {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711},
! 618: {0x730, 0x74a}, {0x7a6, 0x7b0}, {0x901, 0x903}, {0x93c, 0x93c},
! 619: {0x93e, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x983},
! 620: {0x9bc, 0x9bc}, {0x9be, 0x9c4}, {0x9c7, 0x9c8}, {0x9cb, 0x9cd},
! 621: {0x9d7, 0x9d7}, {0x9e2, 0x9e3}, {0xa01, 0xa03}, {0xa3c, 0xa3c},
! 622: {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa70, 0xa71},
! 623: {0xa81, 0xa83}, {0xabc, 0xabc}, {0xabe, 0xac5}, {0xac7, 0xac9},
! 624: {0xacb, 0xacd}, {0xae2, 0xae3}, {0xb01, 0xb03}, {0xb3c, 0xb3c},
! 625: {0xb3e, 0xb43}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, {0xb56, 0xb57},
! 626: {0xb82, 0xb82}, {0xbbe, 0xbc2}, {0xbc6, 0xbc8}, {0xbca, 0xbcd},
! 627: {0xbd7, 0xbd7}, {0xc01, 0xc03}, {0xc3e, 0xc44}, {0xc46, 0xc48},
! 628: {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc82, 0xc83}, {0xcbc, 0xcbc},
! 629: {0xcbe, 0xcc4}, {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6},
! 630: {0xd02, 0xd03}, {0xd3e, 0xd43}, {0xd46, 0xd48}, {0xd4a, 0xd4d},
! 631: {0xd57, 0xd57}, {0xd82, 0xd83}, {0xdca, 0xdca}, {0xdcf, 0xdd4},
! 632: {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xdf2, 0xdf3}, {0xe31, 0xe31},
! 633: {0xe34, 0xe3a}, {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9},
! 634: {0xebb, 0xebc}, {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35},
! 635: {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf3f}, {0xf71, 0xf84},
! 636: {0xf86, 0xf87}, {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6},
! 637: {0x102c, 0x1032}, {0x1036, 0x1039}, {0x1056, 0x1059}, {0x1712, 0x1714},
! 638: {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, {0x17b6, 0x17d3},
! 639: {0x17dd, 0x17dd}, {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x192b},
! 640: {0x1930, 0x193b}, {0x20d0, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a},
1.1 misho 641: {0xfb1e, 0xfb1e}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} };
1.1.1.2 ! misho 642: static const xmlChLRange xmlML[] = {{0x1d165, 0x1d169}, {0x1d16d, 0x1d172},
! 643: {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad},
1.1 misho 644: {0xe0100, 0xe01ef} };
645: static xmlChRangeGroup xmlMG = {113,6,xmlMS,xmlML};
646:
1.1.1.2 ! misho 647: static const xmlChSRange xmlMcS[] = {{0x903, 0x903}, {0x93e, 0x940},
! 648: {0x949, 0x94c}, {0x982, 0x983}, {0x9be, 0x9c0}, {0x9c7, 0x9c8},
! 649: {0x9cb, 0x9cc}, {0x9d7, 0x9d7}, {0xa03, 0xa03}, {0xa3e, 0xa40},
! 650: {0xa83, 0xa83}, {0xabe, 0xac0}, {0xac9, 0xac9}, {0xacb, 0xacc},
! 651: {0xb02, 0xb03}, {0xb3e, 0xb3e}, {0xb40, 0xb40}, {0xb47, 0xb48},
! 652: {0xb4b, 0xb4c}, {0xb57, 0xb57}, {0xbbe, 0xbbf}, {0xbc1, 0xbc2},
! 653: {0xbc6, 0xbc8}, {0xbca, 0xbcc}, {0xbd7, 0xbd7}, {0xc01, 0xc03},
! 654: {0xc41, 0xc44}, {0xc82, 0xc83}, {0xcbe, 0xcbe}, {0xcc0, 0xcc4},
! 655: {0xcc7, 0xcc8}, {0xcca, 0xccb}, {0xcd5, 0xcd6}, {0xd02, 0xd03},
! 656: {0xd3e, 0xd40}, {0xd46, 0xd48}, {0xd4a, 0xd4c}, {0xd57, 0xd57},
! 657: {0xd82, 0xd83}, {0xdcf, 0xdd1}, {0xdd8, 0xddf}, {0xdf2, 0xdf3},
! 658: {0xf3e, 0xf3f}, {0xf7f, 0xf7f}, {0x102c, 0x102c}, {0x1031, 0x1031},
! 659: {0x1038, 0x1038}, {0x1056, 0x1057}, {0x17b6, 0x17b6}, {0x17be, 0x17c5},
! 660: {0x17c7, 0x17c8}, {0x1923, 0x1926}, {0x1929, 0x192b}, {0x1930, 0x1931},
1.1 misho 661: {0x1933, 0x1938} };
662: static const xmlChLRange xmlMcL[] = {{0x1d165, 0x1d166}, {0x1d16d, 0x1d172} };
663: static xmlChRangeGroup xmlMcG = {55,2,xmlMcS,xmlMcL};
664:
1.1.1.2 ! misho 665: static const xmlChSRange xmlMnS[] = {{0x300, 0x357}, {0x35d, 0x36f},
! 666: {0x483, 0x486}, {0x591, 0x5a1}, {0x5a3, 0x5b9}, {0x5bb, 0x5bd},
! 667: {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4}, {0x610, 0x615},
! 668: {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc}, {0x6df, 0x6e4},
! 669: {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711}, {0x730, 0x74a},
! 670: {0x7a6, 0x7b0}, {0x901, 0x902}, {0x93c, 0x93c}, {0x941, 0x948},
! 671: {0x94d, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x981},
! 672: {0x9bc, 0x9bc}, {0x9c1, 0x9c4}, {0x9cd, 0x9cd}, {0x9e2, 0x9e3},
! 673: {0xa01, 0xa02}, {0xa3c, 0xa3c}, {0xa41, 0xa42}, {0xa47, 0xa48},
! 674: {0xa4b, 0xa4d}, {0xa70, 0xa71}, {0xa81, 0xa82}, {0xabc, 0xabc},
! 675: {0xac1, 0xac5}, {0xac7, 0xac8}, {0xacd, 0xacd}, {0xae2, 0xae3},
! 676: {0xb01, 0xb01}, {0xb3c, 0xb3c}, {0xb3f, 0xb3f}, {0xb41, 0xb43},
! 677: {0xb4d, 0xb4d}, {0xb56, 0xb56}, {0xb82, 0xb82}, {0xbc0, 0xbc0},
! 678: {0xbcd, 0xbcd}, {0xc3e, 0xc40}, {0xc46, 0xc48}, {0xc4a, 0xc4d},
! 679: {0xc55, 0xc56}, {0xcbc, 0xcbc}, {0xcbf, 0xcbf}, {0xcc6, 0xcc6},
! 680: {0xccc, 0xccd}, {0xd41, 0xd43}, {0xd4d, 0xd4d}, {0xdca, 0xdca},
! 681: {0xdd2, 0xdd4}, {0xdd6, 0xdd6}, {0xe31, 0xe31}, {0xe34, 0xe3a},
! 682: {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9}, {0xebb, 0xebc},
! 683: {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35}, {0xf37, 0xf37},
! 684: {0xf39, 0xf39}, {0xf71, 0xf7e}, {0xf80, 0xf84}, {0xf86, 0xf87},
! 685: {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x102d, 0x1030},
! 686: {0x1032, 0x1032}, {0x1036, 0x1037}, {0x1039, 0x1039}, {0x1058, 0x1059},
! 687: {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773},
! 688: {0x17b7, 0x17bd}, {0x17c6, 0x17c6}, {0x17c9, 0x17d3}, {0x17dd, 0x17dd},
! 689: {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x1922}, {0x1927, 0x1928},
! 690: {0x1932, 0x1932}, {0x1939, 0x193b}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1},
! 691: {0x20e5, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a}, {0xfb1e, 0xfb1e},
1.1 misho 692: {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} };
1.1.1.2 ! misho 693: static const xmlChLRange xmlMnL[] = {{0x1d167, 0x1d169}, {0x1d17b, 0x1d182},
1.1 misho 694: {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0xe0100, 0xe01ef} };
695: static xmlChRangeGroup xmlMnG = {108,5,xmlMnS,xmlMnL};
696:
1.1.1.2 ! misho 697: static const xmlChSRange xmlNS[] = {{0x30, 0x39}, {0xb2, 0xb3},
! 698: {0xb9, 0xb9}, {0xbc, 0xbe}, {0x660, 0x669}, {0x6f0, 0x6f9},
! 699: {0x966, 0x96f}, {0x9e6, 0x9ef}, {0x9f4, 0x9f9}, {0xa66, 0xa6f},
! 700: {0xae6, 0xaef}, {0xb66, 0xb6f}, {0xbe7, 0xbf2}, {0xc66, 0xc6f},
! 701: {0xce6, 0xcef}, {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9},
! 702: {0xf20, 0xf33}, {0x1040, 0x1049}, {0x1369, 0x137c}, {0x16ee, 0x16f0},
! 703: {0x17e0, 0x17e9}, {0x17f0, 0x17f9}, {0x1810, 0x1819}, {0x1946, 0x194f},
! 704: {0x2070, 0x2070}, {0x2074, 0x2079}, {0x2080, 0x2089}, {0x2153, 0x2183},
! 705: {0x2460, 0x249b}, {0x24ea, 0x24ff}, {0x2776, 0x2793}, {0x3007, 0x3007},
! 706: {0x3021, 0x3029}, {0x3038, 0x303a}, {0x3192, 0x3195}, {0x3220, 0x3229},
1.1 misho 707: {0x3251, 0x325f}, {0x3280, 0x3289}, {0x32b1, 0x32bf}, {0xff10, 0xff19} };
1.1.1.2 ! misho 708: static const xmlChLRange xmlNL[] = {{0x10107, 0x10133}, {0x10320, 0x10323},
1.1 misho 709: {0x1034a, 0x1034a}, {0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} };
710: static xmlChRangeGroup xmlNG = {42,5,xmlNS,xmlNL};
711:
1.1.1.2 ! misho 712: static const xmlChSRange xmlNdS[] = {{0x30, 0x39}, {0x660, 0x669},
! 713: {0x6f0, 0x6f9}, {0x966, 0x96f}, {0x9e6, 0x9ef}, {0xa66, 0xa6f},
! 714: {0xae6, 0xaef}, {0xb66, 0xb6f}, {0xbe7, 0xbef}, {0xc66, 0xc6f},
! 715: {0xce6, 0xcef}, {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9},
! 716: {0xf20, 0xf29}, {0x1040, 0x1049}, {0x1369, 0x1371}, {0x17e0, 0x17e9},
1.1 misho 717: {0x1810, 0x1819}, {0x1946, 0x194f}, {0xff10, 0xff19} };
718: static const xmlChLRange xmlNdL[] = {{0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} };
719: static xmlChRangeGroup xmlNdG = {21,2,xmlNdS,xmlNdL};
720:
1.1.1.2 ! misho 721: static const xmlChSRange xmlNoS[] = {{0xb2, 0xb3}, {0xb9, 0xb9},
! 722: {0xbc, 0xbe}, {0x9f4, 0x9f9}, {0xbf0, 0xbf2}, {0xf2a, 0xf33},
! 723: {0x1372, 0x137c}, {0x17f0, 0x17f9}, {0x2070, 0x2070}, {0x2074, 0x2079},
! 724: {0x2080, 0x2089}, {0x2153, 0x215f}, {0x2460, 0x249b}, {0x24ea, 0x24ff},
! 725: {0x2776, 0x2793}, {0x3192, 0x3195}, {0x3220, 0x3229}, {0x3251, 0x325f},
1.1 misho 726: {0x3280, 0x3289}, {0x32b1, 0x32bf} };
727: static const xmlChLRange xmlNoL[] = {{0x10107, 0x10133}, {0x10320, 0x10323} };
728: static xmlChRangeGroup xmlNoG = {20,2,xmlNoS,xmlNoL};
729:
1.1.1.2 ! misho 730: static const xmlChSRange xmlPS[] = {{0x21, 0x23}, {0x25, 0x2a},
! 731: {0x2c, 0x2f}, {0x3a, 0x3b}, {0x3f, 0x40}, {0x5b, 0x5d}, {0x5f, 0x5f},
! 732: {0x7b, 0x7b}, {0x7d, 0x7d}, {0xa1, 0xa1}, {0xab, 0xab}, {0xb7, 0xb7},
! 733: {0xbb, 0xbb}, {0xbf, 0xbf}, {0x37e, 0x37e}, {0x387, 0x387},
! 734: {0x55a, 0x55f}, {0x589, 0x58a}, {0x5be, 0x5be}, {0x5c0, 0x5c0},
! 735: {0x5c3, 0x5c3}, {0x5f3, 0x5f4}, {0x60c, 0x60d}, {0x61b, 0x61b},
! 736: {0x61f, 0x61f}, {0x66a, 0x66d}, {0x6d4, 0x6d4}, {0x700, 0x70d},
! 737: {0x964, 0x965}, {0x970, 0x970}, {0xdf4, 0xdf4}, {0xe4f, 0xe4f},
! 738: {0xe5a, 0xe5b}, {0xf04, 0xf12}, {0xf3a, 0xf3d}, {0xf85, 0xf85},
! 739: {0x104a, 0x104f}, {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e},
! 740: {0x169b, 0x169c}, {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6},
! 741: {0x17d8, 0x17da}, {0x1800, 0x180a}, {0x1944, 0x1945}, {0x2010, 0x2027},
! 742: {0x2030, 0x2043}, {0x2045, 0x2051}, {0x2053, 0x2054}, {0x2057, 0x2057},
! 743: {0x207d, 0x207e}, {0x208d, 0x208e}, {0x2329, 0x232a}, {0x23b4, 0x23b6},
! 744: {0x2768, 0x2775}, {0x27e6, 0x27eb}, {0x2983, 0x2998}, {0x29d8, 0x29db},
! 745: {0x29fc, 0x29fd}, {0x3001, 0x3003}, {0x3008, 0x3011}, {0x3014, 0x301f},
! 746: {0x3030, 0x3030}, {0x303d, 0x303d}, {0x30a0, 0x30a0}, {0x30fb, 0x30fb},
! 747: {0xfd3e, 0xfd3f}, {0xfe30, 0xfe52}, {0xfe54, 0xfe61}, {0xfe63, 0xfe63},
! 748: {0xfe68, 0xfe68}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff0a},
! 749: {0xff0c, 0xff0f}, {0xff1a, 0xff1b}, {0xff1f, 0xff20}, {0xff3b, 0xff3d},
1.1 misho 750: {0xff3f, 0xff3f}, {0xff5b, 0xff5b}, {0xff5d, 0xff5d}, {0xff5f, 0xff65} };
751: static const xmlChLRange xmlPL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} };
752: static xmlChRangeGroup xmlPG = {84,2,xmlPS,xmlPL};
753:
1.1.1.2 ! misho 754: static const xmlChSRange xmlPdS[] = {{0x2d, 0x2d}, {0x58a, 0x58a},
! 755: {0x1806, 0x1806}, {0x2010, 0x2015}, {0x301c, 0x301c}, {0x3030, 0x3030},
! 756: {0x30a0, 0x30a0}, {0xfe31, 0xfe32}, {0xfe58, 0xfe58}, {0xfe63, 0xfe63},
1.1 misho 757: {0xff0d, 0xff0d} };
758: static xmlChRangeGroup xmlPdG = {11,0,xmlPdS,NULL};
759:
1.1.1.2 ! misho 760: static const xmlChSRange xmlPeS[] = {{0x29, 0x29}, {0x5d, 0x5d},
! 761: {0x7d, 0x7d}, {0xf3b, 0xf3b}, {0xf3d, 0xf3d}, {0x169c, 0x169c},
! 762: {0x2046, 0x2046}, {0x207e, 0x207e}, {0x208e, 0x208e}, {0x232a, 0x232a},
! 763: {0x23b5, 0x23b5}, {0x2769, 0x2769}, {0x276b, 0x276b}, {0x276d, 0x276d},
! 764: {0x276f, 0x276f}, {0x2771, 0x2771}, {0x2773, 0x2773}, {0x2775, 0x2775},
! 765: {0x27e7, 0x27e7}, {0x27e9, 0x27e9}, {0x27eb, 0x27eb}, {0x2984, 0x2984},
! 766: {0x2986, 0x2986}, {0x2988, 0x2988}, {0x298a, 0x298a}, {0x298c, 0x298c},
! 767: {0x298e, 0x298e}, {0x2990, 0x2990}, {0x2992, 0x2992}, {0x2994, 0x2994},
! 768: {0x2996, 0x2996}, {0x2998, 0x2998}, {0x29d9, 0x29d9}, {0x29db, 0x29db},
! 769: {0x29fd, 0x29fd}, {0x3009, 0x3009}, {0x300b, 0x300b}, {0x300d, 0x300d},
! 770: {0x300f, 0x300f}, {0x3011, 0x3011}, {0x3015, 0x3015}, {0x3017, 0x3017},
! 771: {0x3019, 0x3019}, {0x301b, 0x301b}, {0x301e, 0x301f}, {0xfd3f, 0xfd3f},
! 772: {0xfe36, 0xfe36}, {0xfe38, 0xfe38}, {0xfe3a, 0xfe3a}, {0xfe3c, 0xfe3c},
! 773: {0xfe3e, 0xfe3e}, {0xfe40, 0xfe40}, {0xfe42, 0xfe42}, {0xfe44, 0xfe44},
! 774: {0xfe48, 0xfe48}, {0xfe5a, 0xfe5a}, {0xfe5c, 0xfe5c}, {0xfe5e, 0xfe5e},
! 775: {0xff09, 0xff09}, {0xff3d, 0xff3d}, {0xff5d, 0xff5d}, {0xff60, 0xff60},
1.1 misho 776: {0xff63, 0xff63} };
777: static xmlChRangeGroup xmlPeG = {63,0,xmlPeS,NULL};
778:
1.1.1.2 ! misho 779: static const xmlChSRange xmlPoS[] = {{0x21, 0x23}, {0x25, 0x27},
! 780: {0x2a, 0x2a}, {0x2c, 0x2c}, {0x2e, 0x2f}, {0x3a, 0x3b}, {0x3f, 0x40},
! 781: {0x5c, 0x5c}, {0xa1, 0xa1}, {0xb7, 0xb7}, {0xbf, 0xbf}, {0x37e, 0x37e},
! 782: {0x387, 0x387}, {0x55a, 0x55f}, {0x589, 0x589}, {0x5be, 0x5be},
! 783: {0x5c0, 0x5c0}, {0x5c3, 0x5c3}, {0x5f3, 0x5f4}, {0x60c, 0x60d},
! 784: {0x61b, 0x61b}, {0x61f, 0x61f}, {0x66a, 0x66d}, {0x6d4, 0x6d4},
! 785: {0x700, 0x70d}, {0x964, 0x965}, {0x970, 0x970}, {0xdf4, 0xdf4},
! 786: {0xe4f, 0xe4f}, {0xe5a, 0xe5b}, {0xf04, 0xf12}, {0xf85, 0xf85},
! 787: {0x104a, 0x104f}, {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e},
! 788: {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, {0x17d8, 0x17da},
! 789: {0x1800, 0x1805}, {0x1807, 0x180a}, {0x1944, 0x1945}, {0x2016, 0x2017},
! 790: {0x2020, 0x2027}, {0x2030, 0x2038}, {0x203b, 0x203e}, {0x2041, 0x2043},
! 791: {0x2047, 0x2051}, {0x2053, 0x2053}, {0x2057, 0x2057}, {0x23b6, 0x23b6},
! 792: {0x3001, 0x3003}, {0x303d, 0x303d}, {0xfe30, 0xfe30}, {0xfe45, 0xfe46},
! 793: {0xfe49, 0xfe4c}, {0xfe50, 0xfe52}, {0xfe54, 0xfe57}, {0xfe5f, 0xfe61},
! 794: {0xfe68, 0xfe68}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff07},
! 795: {0xff0a, 0xff0a}, {0xff0c, 0xff0c}, {0xff0e, 0xff0f}, {0xff1a, 0xff1b},
1.1 misho 796: {0xff1f, 0xff20}, {0xff3c, 0xff3c}, {0xff61, 0xff61}, {0xff64, 0xff64} };
797: static const xmlChLRange xmlPoL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} };
798: static xmlChRangeGroup xmlPoG = {72,2,xmlPoS,xmlPoL};
799:
1.1.1.2 ! misho 800: static const xmlChSRange xmlPsS[] = {{0x28, 0x28}, {0x5b, 0x5b},
! 801: {0x7b, 0x7b}, {0xf3a, 0xf3a}, {0xf3c, 0xf3c}, {0x169b, 0x169b},
! 802: {0x201a, 0x201a}, {0x201e, 0x201e}, {0x2045, 0x2045}, {0x207d, 0x207d},
! 803: {0x208d, 0x208d}, {0x2329, 0x2329}, {0x23b4, 0x23b4}, {0x2768, 0x2768},
! 804: {0x276a, 0x276a}, {0x276c, 0x276c}, {0x276e, 0x276e}, {0x2770, 0x2770},
! 805: {0x2772, 0x2772}, {0x2774, 0x2774}, {0x27e6, 0x27e6}, {0x27e8, 0x27e8},
! 806: {0x27ea, 0x27ea}, {0x2983, 0x2983}, {0x2985, 0x2985}, {0x2987, 0x2987},
! 807: {0x2989, 0x2989}, {0x298b, 0x298b}, {0x298d, 0x298d}, {0x298f, 0x298f},
! 808: {0x2991, 0x2991}, {0x2993, 0x2993}, {0x2995, 0x2995}, {0x2997, 0x2997},
! 809: {0x29d8, 0x29d8}, {0x29da, 0x29da}, {0x29fc, 0x29fc}, {0x3008, 0x3008},
! 810: {0x300a, 0x300a}, {0x300c, 0x300c}, {0x300e, 0x300e}, {0x3010, 0x3010},
! 811: {0x3014, 0x3014}, {0x3016, 0x3016}, {0x3018, 0x3018}, {0x301a, 0x301a},
! 812: {0x301d, 0x301d}, {0xfd3e, 0xfd3e}, {0xfe35, 0xfe35}, {0xfe37, 0xfe37},
! 813: {0xfe39, 0xfe39}, {0xfe3b, 0xfe3b}, {0xfe3d, 0xfe3d}, {0xfe3f, 0xfe3f},
! 814: {0xfe41, 0xfe41}, {0xfe43, 0xfe43}, {0xfe47, 0xfe47}, {0xfe59, 0xfe59},
! 815: {0xfe5b, 0xfe5b}, {0xfe5d, 0xfe5d}, {0xff08, 0xff08}, {0xff3b, 0xff3b},
1.1 misho 816: {0xff5b, 0xff5b}, {0xff5f, 0xff5f}, {0xff62, 0xff62} };
817: static xmlChRangeGroup xmlPsG = {65,0,xmlPsS,NULL};
818:
1.1.1.2 ! misho 819: static const xmlChSRange xmlSS[] = {{0x24, 0x24}, {0x2b, 0x2b},
! 820: {0x3c, 0x3e}, {0x5e, 0x5e}, {0x60, 0x60}, {0x7c, 0x7c}, {0x7e, 0x7e},
! 821: {0xa2, 0xa9}, {0xac, 0xac}, {0xae, 0xb1}, {0xb4, 0xb4}, {0xb6, 0xb6},
! 822: {0xb8, 0xb8}, {0xd7, 0xd7}, {0xf7, 0xf7}, {0x2c2, 0x2c5},
! 823: {0x2d2, 0x2df}, {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375},
! 824: {0x384, 0x385}, {0x3f6, 0x3f6}, {0x482, 0x482}, {0x60e, 0x60f},
! 825: {0x6e9, 0x6e9}, {0x6fd, 0x6fe}, {0x9f2, 0x9f3}, {0x9fa, 0x9fa},
! 826: {0xaf1, 0xaf1}, {0xb70, 0xb70}, {0xbf3, 0xbfa}, {0xe3f, 0xe3f},
! 827: {0xf01, 0xf03}, {0xf13, 0xf17}, {0xf1a, 0xf1f}, {0xf34, 0xf34},
! 828: {0xf36, 0xf36}, {0xf38, 0xf38}, {0xfbe, 0xfc5}, {0xfc7, 0xfcc},
! 829: {0xfcf, 0xfcf}, {0x17db, 0x17db}, {0x1940, 0x1940}, {0x19e0, 0x19ff},
! 830: {0x1fbd, 0x1fbd}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf},
! 831: {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x2044, 0x2044}, {0x2052, 0x2052},
! 832: {0x207a, 0x207c}, {0x208a, 0x208c}, {0x20a0, 0x20b1}, {0x2100, 0x2101},
! 833: {0x2103, 0x2106}, {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118},
! 834: {0x211e, 0x2123}, {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129},
! 835: {0x212e, 0x212e}, {0x2132, 0x2132}, {0x213a, 0x213b}, {0x2140, 0x2144},
! 836: {0x214a, 0x214b}, {0x2190, 0x2328}, {0x232b, 0x23b3}, {0x23b7, 0x23d0},
! 837: {0x2400, 0x2426}, {0x2440, 0x244a}, {0x249c, 0x24e9}, {0x2500, 0x2617},
! 838: {0x2619, 0x267d}, {0x2680, 0x2691}, {0x26a0, 0x26a1}, {0x2701, 0x2704},
! 839: {0x2706, 0x2709}, {0x270c, 0x2727}, {0x2729, 0x274b}, {0x274d, 0x274d},
! 840: {0x274f, 0x2752}, {0x2756, 0x2756}, {0x2758, 0x275e}, {0x2761, 0x2767},
! 841: {0x2794, 0x2794}, {0x2798, 0x27af}, {0x27b1, 0x27be}, {0x27d0, 0x27e5},
! 842: {0x27f0, 0x2982}, {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2b0d},
! 843: {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb},
! 844: {0x3004, 0x3004}, {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037},
! 845: {0x303e, 0x303f}, {0x309b, 0x309c}, {0x3190, 0x3191}, {0x3196, 0x319f},
! 846: {0x3200, 0x321e}, {0x322a, 0x3243}, {0x3250, 0x3250}, {0x3260, 0x327d},
! 847: {0x327f, 0x327f}, {0x328a, 0x32b0}, {0x32c0, 0x32fe}, {0x3300, 0x33ff},
! 848: {0x4dc0, 0x4dff}, {0xa490, 0xa4c6}, {0xfb29, 0xfb29}, {0xfdfc, 0xfdfd},
! 849: {0xfe62, 0xfe62}, {0xfe64, 0xfe66}, {0xfe69, 0xfe69}, {0xff04, 0xff04},
! 850: {0xff0b, 0xff0b}, {0xff1c, 0xff1e}, {0xff3e, 0xff3e}, {0xff40, 0xff40},
! 851: {0xff5c, 0xff5c}, {0xff5e, 0xff5e}, {0xffe0, 0xffe6}, {0xffe8, 0xffee},
1.1 misho 852: {0xfffc, 0xfffd} };
1.1.1.2 ! misho 853: static const xmlChLRange xmlSL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f},
! 854: {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164},
! 855: {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9},
! 856: {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356}, {0x1d6c1, 0x1d6c1},
! 857: {0x1d6db, 0x1d6db}, {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715},
! 858: {0x1d735, 0x1d735}, {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f},
1.1 misho 859: {0x1d789, 0x1d789}, {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} };
860: static xmlChRangeGroup xmlSG = {133,20,xmlSS,xmlSL};
861:
1.1.1.2 ! misho 862: static const xmlChSRange xmlScS[] = {{0x24, 0x24}, {0xa2, 0xa5},
! 863: {0x9f2, 0x9f3}, {0xaf1, 0xaf1}, {0xbf9, 0xbf9}, {0xe3f, 0xe3f},
! 864: {0x17db, 0x17db}, {0x20a0, 0x20b1}, {0xfdfc, 0xfdfc}, {0xfe69, 0xfe69},
1.1 misho 865: {0xff04, 0xff04}, {0xffe0, 0xffe1}, {0xffe5, 0xffe6} };
866: static xmlChRangeGroup xmlScG = {13,0,xmlScS,NULL};
867:
1.1.1.2 ! misho 868: static const xmlChSRange xmlSkS[] = {{0x5e, 0x5e}, {0x60, 0x60},
! 869: {0xa8, 0xa8}, {0xaf, 0xaf}, {0xb4, 0xb4}, {0xb8, 0xb8}, {0x2c2, 0x2c5},
! 870: {0x2d2, 0x2df}, {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375},
! 871: {0x384, 0x385}, {0x1fbd, 0x1fbd}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf},
! 872: {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x309b, 0x309c},
1.1 misho 873: {0xff3e, 0xff3e}, {0xff40, 0xff40}, {0xffe3, 0xffe3} };
874: static xmlChRangeGroup xmlSkG = {22,0,xmlSkS,NULL};
875:
1.1.1.2 ! misho 876: static const xmlChSRange xmlSmS[] = {{0x2b, 0x2b}, {0x3c, 0x3e},
! 877: {0x7c, 0x7c}, {0x7e, 0x7e}, {0xac, 0xac}, {0xb1, 0xb1}, {0xd7, 0xd7},
! 878: {0xf7, 0xf7}, {0x3f6, 0x3f6}, {0x2044, 0x2044}, {0x2052, 0x2052},
! 879: {0x207a, 0x207c}, {0x208a, 0x208c}, {0x2140, 0x2144}, {0x214b, 0x214b},
! 880: {0x2190, 0x2194}, {0x219a, 0x219b}, {0x21a0, 0x21a0}, {0x21a3, 0x21a3},
! 881: {0x21a6, 0x21a6}, {0x21ae, 0x21ae}, {0x21ce, 0x21cf}, {0x21d2, 0x21d2},
! 882: {0x21d4, 0x21d4}, {0x21f4, 0x22ff}, {0x2308, 0x230b}, {0x2320, 0x2321},
! 883: {0x237c, 0x237c}, {0x239b, 0x23b3}, {0x25b7, 0x25b7}, {0x25c1, 0x25c1},
! 884: {0x25f8, 0x25ff}, {0x266f, 0x266f}, {0x27d0, 0x27e5}, {0x27f0, 0x27ff},
! 885: {0x2900, 0x2982}, {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2aff},
! 886: {0xfb29, 0xfb29}, {0xfe62, 0xfe62}, {0xfe64, 0xfe66}, {0xff0b, 0xff0b},
! 887: {0xff1c, 0xff1e}, {0xff5c, 0xff5c}, {0xff5e, 0xff5e}, {0xffe2, 0xffe2},
1.1 misho 888: {0xffe9, 0xffec} };
1.1.1.2 ! misho 889: static const xmlChLRange xmlSmL[] = {{0x1d6c1, 0x1d6c1}, {0x1d6db, 0x1d6db},
! 890: {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715}, {0x1d735, 0x1d735},
! 891: {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f}, {0x1d789, 0x1d789},
1.1 misho 892: {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} };
893: static xmlChRangeGroup xmlSmG = {48,10,xmlSmS,xmlSmL};
894:
1.1.1.2 ! misho 895: static const xmlChSRange xmlSoS[] = {{0xa6, 0xa7}, {0xa9, 0xa9},
! 896: {0xae, 0xae}, {0xb0, 0xb0}, {0xb6, 0xb6}, {0x482, 0x482},
! 897: {0x60e, 0x60f}, {0x6e9, 0x6e9}, {0x6fd, 0x6fe}, {0x9fa, 0x9fa},
! 898: {0xb70, 0xb70}, {0xbf3, 0xbf8}, {0xbfa, 0xbfa}, {0xf01, 0xf03},
! 899: {0xf13, 0xf17}, {0xf1a, 0xf1f}, {0xf34, 0xf34}, {0xf36, 0xf36},
! 900: {0xf38, 0xf38}, {0xfbe, 0xfc5}, {0xfc7, 0xfcc}, {0xfcf, 0xfcf},
! 901: {0x1940, 0x1940}, {0x19e0, 0x19ff}, {0x2100, 0x2101}, {0x2103, 0x2106},
! 902: {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118}, {0x211e, 0x2123},
! 903: {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129}, {0x212e, 0x212e},
! 904: {0x2132, 0x2132}, {0x213a, 0x213b}, {0x214a, 0x214a}, {0x2195, 0x2199},
! 905: {0x219c, 0x219f}, {0x21a1, 0x21a2}, {0x21a4, 0x21a5}, {0x21a7, 0x21ad},
! 906: {0x21af, 0x21cd}, {0x21d0, 0x21d1}, {0x21d3, 0x21d3}, {0x21d5, 0x21f3},
! 907: {0x2300, 0x2307}, {0x230c, 0x231f}, {0x2322, 0x2328}, {0x232b, 0x237b},
! 908: {0x237d, 0x239a}, {0x23b7, 0x23d0}, {0x2400, 0x2426}, {0x2440, 0x244a},
! 909: {0x249c, 0x24e9}, {0x2500, 0x25b6}, {0x25b8, 0x25c0}, {0x25c2, 0x25f7},
! 910: {0x2600, 0x2617}, {0x2619, 0x266e}, {0x2670, 0x267d}, {0x2680, 0x2691},
! 911: {0x26a0, 0x26a1}, {0x2701, 0x2704}, {0x2706, 0x2709}, {0x270c, 0x2727},
! 912: {0x2729, 0x274b}, {0x274d, 0x274d}, {0x274f, 0x2752}, {0x2756, 0x2756},
! 913: {0x2758, 0x275e}, {0x2761, 0x2767}, {0x2794, 0x2794}, {0x2798, 0x27af},
! 914: {0x27b1, 0x27be}, {0x2800, 0x28ff}, {0x2b00, 0x2b0d}, {0x2e80, 0x2e99},
! 915: {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3004, 0x3004},
! 916: {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037}, {0x303e, 0x303f},
! 917: {0x3190, 0x3191}, {0x3196, 0x319f}, {0x3200, 0x321e}, {0x322a, 0x3243},
! 918: {0x3250, 0x3250}, {0x3260, 0x327d}, {0x327f, 0x327f}, {0x328a, 0x32b0},
! 919: {0x32c0, 0x32fe}, {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, {0xa490, 0xa4c6},
! 920: {0xfdfd, 0xfdfd}, {0xffe4, 0xffe4}, {0xffe8, 0xffe8}, {0xffed, 0xffee},
1.1 misho 921: {0xfffc, 0xfffd} };
1.1.1.2 ! misho 922: static const xmlChLRange xmlSoL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f},
! 923: {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164},
! 924: {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9},
1.1 misho 925: {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356} };
926: static xmlChRangeGroup xmlSoG = {103,10,xmlSoS,xmlSoL};
927:
1.1.1.2 ! misho 928: static const xmlChSRange xmlZS[] = {{0x20, 0x20}, {0xa0, 0xa0},
! 929: {0x1680, 0x1680}, {0x180e, 0x180e}, {0x2000, 0x200a}, {0x2028, 0x2029},
1.1 misho 930: {0x202f, 0x202f}, {0x205f, 0x205f}, {0x3000, 0x3000} };
931: static xmlChRangeGroup xmlZG = {9,0,xmlZS,NULL};
932:
933: static xmlUnicodeNameTable xmlUnicodeBlockTbl = {xmlUnicodeBlocks, 128};
934: static xmlUnicodeNameTable xmlUnicodeCatTbl = {xmlUnicodeCats, 36};
935:
936: /**
937: * xmlUnicodeLookup:
938: * @tptr: pointer to the name table
939: * @name: name to be found
940: *
941: * binary table lookup for user-supplied name
942: *
943: * Returns pointer to range function if found, otherwise NULL
944: */
945: static xmlIntFunc
946: *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname) {
947: int low, high, mid, cmp;
948: xmlUnicodeRange *sptr;
949:
950: if ((tptr == NULL) || (tname == NULL)) return(NULL);
951:
952: low = 0;
953: high = tptr->numentries - 1;
954: sptr = tptr->table;
955: while (low <= high) {
956: mid = (low + high) / 2;
957: if ((cmp=strcmp(tname, sptr[mid].rangename)) == 0)
958: return (sptr[mid].func);
959: if (cmp < 0)
960: high = mid - 1;
961: else
962: low = mid + 1;
963: }
1.1.1.2 ! misho 964: return (NULL);
1.1 misho 965: }
966:
967: /**
968: * xmlUCSIsAegeanNumbers:
969: * @code: UCS code point
970: *
971: * Check whether the character is part of AegeanNumbers UCS Block
972: *
973: * Returns 1 if true 0 otherwise
974: */
975: int
976: xmlUCSIsAegeanNumbers(int code) {
977: return(((code >= 0x10100) && (code <= 0x1013F)));
978: }
979:
980: /**
981: * xmlUCSIsAlphabeticPresentationForms:
982: * @code: UCS code point
983: *
984: * Check whether the character is part of AlphabeticPresentationForms UCS Block
985: *
986: * Returns 1 if true 0 otherwise
987: */
988: int
989: xmlUCSIsAlphabeticPresentationForms(int code) {
990: return(((code >= 0xFB00) && (code <= 0xFB4F)));
991: }
992:
993: /**
994: * xmlUCSIsArabic:
995: * @code: UCS code point
996: *
997: * Check whether the character is part of Arabic UCS Block
998: *
999: * Returns 1 if true 0 otherwise
1000: */
1001: int
1002: xmlUCSIsArabic(int code) {
1003: return(((code >= 0x0600) && (code <= 0x06FF)));
1004: }
1005:
1006: /**
1007: * xmlUCSIsArabicPresentationFormsA:
1008: * @code: UCS code point
1009: *
1010: * Check whether the character is part of ArabicPresentationForms-A UCS Block
1011: *
1012: * Returns 1 if true 0 otherwise
1013: */
1014: int
1015: xmlUCSIsArabicPresentationFormsA(int code) {
1016: return(((code >= 0xFB50) && (code <= 0xFDFF)));
1017: }
1018:
1019: /**
1020: * xmlUCSIsArabicPresentationFormsB:
1021: * @code: UCS code point
1022: *
1023: * Check whether the character is part of ArabicPresentationForms-B UCS Block
1024: *
1025: * Returns 1 if true 0 otherwise
1026: */
1027: int
1028: xmlUCSIsArabicPresentationFormsB(int code) {
1029: return(((code >= 0xFE70) && (code <= 0xFEFF)));
1030: }
1031:
1032: /**
1033: * xmlUCSIsArmenian:
1034: * @code: UCS code point
1035: *
1036: * Check whether the character is part of Armenian UCS Block
1037: *
1038: * Returns 1 if true 0 otherwise
1039: */
1040: int
1041: xmlUCSIsArmenian(int code) {
1042: return(((code >= 0x0530) && (code <= 0x058F)));
1043: }
1044:
1045: /**
1046: * xmlUCSIsArrows:
1047: * @code: UCS code point
1048: *
1049: * Check whether the character is part of Arrows UCS Block
1050: *
1051: * Returns 1 if true 0 otherwise
1052: */
1053: int
1054: xmlUCSIsArrows(int code) {
1055: return(((code >= 0x2190) && (code <= 0x21FF)));
1056: }
1057:
1058: /**
1059: * xmlUCSIsBasicLatin:
1060: * @code: UCS code point
1061: *
1062: * Check whether the character is part of BasicLatin UCS Block
1063: *
1064: * Returns 1 if true 0 otherwise
1065: */
1066: int
1067: xmlUCSIsBasicLatin(int code) {
1068: return(((code >= 0x0000) && (code <= 0x007F)));
1069: }
1070:
1071: /**
1072: * xmlUCSIsBengali:
1073: * @code: UCS code point
1074: *
1075: * Check whether the character is part of Bengali UCS Block
1076: *
1077: * Returns 1 if true 0 otherwise
1078: */
1079: int
1080: xmlUCSIsBengali(int code) {
1081: return(((code >= 0x0980) && (code <= 0x09FF)));
1082: }
1083:
1084: /**
1085: * xmlUCSIsBlockElements:
1086: * @code: UCS code point
1087: *
1088: * Check whether the character is part of BlockElements UCS Block
1089: *
1090: * Returns 1 if true 0 otherwise
1091: */
1092: int
1093: xmlUCSIsBlockElements(int code) {
1094: return(((code >= 0x2580) && (code <= 0x259F)));
1095: }
1096:
1097: /**
1098: * xmlUCSIsBopomofo:
1099: * @code: UCS code point
1100: *
1101: * Check whether the character is part of Bopomofo UCS Block
1102: *
1103: * Returns 1 if true 0 otherwise
1104: */
1105: int
1106: xmlUCSIsBopomofo(int code) {
1107: return(((code >= 0x3100) && (code <= 0x312F)));
1108: }
1109:
1110: /**
1111: * xmlUCSIsBopomofoExtended:
1112: * @code: UCS code point
1113: *
1114: * Check whether the character is part of BopomofoExtended UCS Block
1115: *
1116: * Returns 1 if true 0 otherwise
1117: */
1118: int
1119: xmlUCSIsBopomofoExtended(int code) {
1120: return(((code >= 0x31A0) && (code <= 0x31BF)));
1121: }
1122:
1123: /**
1124: * xmlUCSIsBoxDrawing:
1125: * @code: UCS code point
1126: *
1127: * Check whether the character is part of BoxDrawing UCS Block
1128: *
1129: * Returns 1 if true 0 otherwise
1130: */
1131: int
1132: xmlUCSIsBoxDrawing(int code) {
1133: return(((code >= 0x2500) && (code <= 0x257F)));
1134: }
1135:
1136: /**
1137: * xmlUCSIsBraillePatterns:
1138: * @code: UCS code point
1139: *
1140: * Check whether the character is part of BraillePatterns UCS Block
1141: *
1142: * Returns 1 if true 0 otherwise
1143: */
1144: int
1145: xmlUCSIsBraillePatterns(int code) {
1146: return(((code >= 0x2800) && (code <= 0x28FF)));
1147: }
1148:
1149: /**
1150: * xmlUCSIsBuhid:
1151: * @code: UCS code point
1152: *
1153: * Check whether the character is part of Buhid UCS Block
1154: *
1155: * Returns 1 if true 0 otherwise
1156: */
1157: int
1158: xmlUCSIsBuhid(int code) {
1159: return(((code >= 0x1740) && (code <= 0x175F)));
1160: }
1161:
1162: /**
1163: * xmlUCSIsByzantineMusicalSymbols:
1164: * @code: UCS code point
1165: *
1166: * Check whether the character is part of ByzantineMusicalSymbols UCS Block
1167: *
1168: * Returns 1 if true 0 otherwise
1169: */
1170: int
1171: xmlUCSIsByzantineMusicalSymbols(int code) {
1172: return(((code >= 0x1D000) && (code <= 0x1D0FF)));
1173: }
1174:
1175: /**
1176: * xmlUCSIsCJKCompatibility:
1177: * @code: UCS code point
1178: *
1179: * Check whether the character is part of CJKCompatibility UCS Block
1180: *
1181: * Returns 1 if true 0 otherwise
1182: */
1183: int
1184: xmlUCSIsCJKCompatibility(int code) {
1185: return(((code >= 0x3300) && (code <= 0x33FF)));
1186: }
1187:
1188: /**
1189: * xmlUCSIsCJKCompatibilityForms:
1190: * @code: UCS code point
1191: *
1192: * Check whether the character is part of CJKCompatibilityForms UCS Block
1193: *
1194: * Returns 1 if true 0 otherwise
1195: */
1196: int
1197: xmlUCSIsCJKCompatibilityForms(int code) {
1198: return(((code >= 0xFE30) && (code <= 0xFE4F)));
1199: }
1200:
1201: /**
1202: * xmlUCSIsCJKCompatibilityIdeographs:
1203: * @code: UCS code point
1204: *
1205: * Check whether the character is part of CJKCompatibilityIdeographs UCS Block
1206: *
1207: * Returns 1 if true 0 otherwise
1208: */
1209: int
1210: xmlUCSIsCJKCompatibilityIdeographs(int code) {
1211: return(((code >= 0xF900) && (code <= 0xFAFF)));
1212: }
1213:
1214: /**
1215: * xmlUCSIsCJKCompatibilityIdeographsSupplement:
1216: * @code: UCS code point
1217: *
1218: * Check whether the character is part of CJKCompatibilityIdeographsSupplement UCS Block
1219: *
1220: * Returns 1 if true 0 otherwise
1221: */
1222: int
1223: xmlUCSIsCJKCompatibilityIdeographsSupplement(int code) {
1224: return(((code >= 0x2F800) && (code <= 0x2FA1F)));
1225: }
1226:
1227: /**
1228: * xmlUCSIsCJKRadicalsSupplement:
1229: * @code: UCS code point
1230: *
1231: * Check whether the character is part of CJKRadicalsSupplement UCS Block
1232: *
1233: * Returns 1 if true 0 otherwise
1234: */
1235: int
1236: xmlUCSIsCJKRadicalsSupplement(int code) {
1237: return(((code >= 0x2E80) && (code <= 0x2EFF)));
1238: }
1239:
1240: /**
1241: * xmlUCSIsCJKSymbolsandPunctuation:
1242: * @code: UCS code point
1243: *
1244: * Check whether the character is part of CJKSymbolsandPunctuation UCS Block
1245: *
1246: * Returns 1 if true 0 otherwise
1247: */
1248: int
1249: xmlUCSIsCJKSymbolsandPunctuation(int code) {
1250: return(((code >= 0x3000) && (code <= 0x303F)));
1251: }
1252:
1253: /**
1254: * xmlUCSIsCJKUnifiedIdeographs:
1255: * @code: UCS code point
1256: *
1257: * Check whether the character is part of CJKUnifiedIdeographs UCS Block
1258: *
1259: * Returns 1 if true 0 otherwise
1260: */
1261: int
1262: xmlUCSIsCJKUnifiedIdeographs(int code) {
1263: return(((code >= 0x4E00) && (code <= 0x9FFF)));
1264: }
1265:
1266: /**
1267: * xmlUCSIsCJKUnifiedIdeographsExtensionA:
1268: * @code: UCS code point
1269: *
1270: * Check whether the character is part of CJKUnifiedIdeographsExtensionA UCS Block
1271: *
1272: * Returns 1 if true 0 otherwise
1273: */
1274: int
1275: xmlUCSIsCJKUnifiedIdeographsExtensionA(int code) {
1276: return(((code >= 0x3400) && (code <= 0x4DBF)));
1277: }
1278:
1279: /**
1280: * xmlUCSIsCJKUnifiedIdeographsExtensionB:
1281: * @code: UCS code point
1282: *
1283: * Check whether the character is part of CJKUnifiedIdeographsExtensionB UCS Block
1284: *
1285: * Returns 1 if true 0 otherwise
1286: */
1287: int
1288: xmlUCSIsCJKUnifiedIdeographsExtensionB(int code) {
1289: return(((code >= 0x20000) && (code <= 0x2A6DF)));
1290: }
1291:
1292: /**
1293: * xmlUCSIsCherokee:
1294: * @code: UCS code point
1295: *
1296: * Check whether the character is part of Cherokee UCS Block
1297: *
1298: * Returns 1 if true 0 otherwise
1299: */
1300: int
1301: xmlUCSIsCherokee(int code) {
1302: return(((code >= 0x13A0) && (code <= 0x13FF)));
1303: }
1304:
1305: /**
1306: * xmlUCSIsCombiningDiacriticalMarks:
1307: * @code: UCS code point
1308: *
1309: * Check whether the character is part of CombiningDiacriticalMarks UCS Block
1310: *
1311: * Returns 1 if true 0 otherwise
1312: */
1313: int
1314: xmlUCSIsCombiningDiacriticalMarks(int code) {
1315: return(((code >= 0x0300) && (code <= 0x036F)));
1316: }
1317:
1318: /**
1319: * xmlUCSIsCombiningDiacriticalMarksforSymbols:
1320: * @code: UCS code point
1321: *
1322: * Check whether the character is part of CombiningDiacriticalMarksforSymbols UCS Block
1323: *
1324: * Returns 1 if true 0 otherwise
1325: */
1326: int
1327: xmlUCSIsCombiningDiacriticalMarksforSymbols(int code) {
1328: return(((code >= 0x20D0) && (code <= 0x20FF)));
1329: }
1330:
1331: /**
1332: * xmlUCSIsCombiningHalfMarks:
1333: * @code: UCS code point
1334: *
1335: * Check whether the character is part of CombiningHalfMarks UCS Block
1336: *
1337: * Returns 1 if true 0 otherwise
1338: */
1339: int
1340: xmlUCSIsCombiningHalfMarks(int code) {
1341: return(((code >= 0xFE20) && (code <= 0xFE2F)));
1342: }
1343:
1344: /**
1345: * xmlUCSIsCombiningMarksforSymbols:
1346: * @code: UCS code point
1347: *
1348: * Check whether the character is part of CombiningMarksforSymbols UCS Block
1349: *
1350: * Returns 1 if true 0 otherwise
1351: */
1352: int
1353: xmlUCSIsCombiningMarksforSymbols(int code) {
1354: return(((code >= 0x20D0) && (code <= 0x20FF)));
1355: }
1356:
1357: /**
1358: * xmlUCSIsControlPictures:
1359: * @code: UCS code point
1360: *
1361: * Check whether the character is part of ControlPictures UCS Block
1362: *
1363: * Returns 1 if true 0 otherwise
1364: */
1365: int
1366: xmlUCSIsControlPictures(int code) {
1367: return(((code >= 0x2400) && (code <= 0x243F)));
1368: }
1369:
1370: /**
1371: * xmlUCSIsCurrencySymbols:
1372: * @code: UCS code point
1373: *
1374: * Check whether the character is part of CurrencySymbols UCS Block
1375: *
1376: * Returns 1 if true 0 otherwise
1377: */
1378: int
1379: xmlUCSIsCurrencySymbols(int code) {
1380: return(((code >= 0x20A0) && (code <= 0x20CF)));
1381: }
1382:
1383: /**
1384: * xmlUCSIsCypriotSyllabary:
1385: * @code: UCS code point
1386: *
1387: * Check whether the character is part of CypriotSyllabary UCS Block
1388: *
1389: * Returns 1 if true 0 otherwise
1390: */
1391: int
1392: xmlUCSIsCypriotSyllabary(int code) {
1393: return(((code >= 0x10800) && (code <= 0x1083F)));
1394: }
1395:
1396: /**
1397: * xmlUCSIsCyrillic:
1398: * @code: UCS code point
1399: *
1400: * Check whether the character is part of Cyrillic UCS Block
1401: *
1402: * Returns 1 if true 0 otherwise
1403: */
1404: int
1405: xmlUCSIsCyrillic(int code) {
1406: return(((code >= 0x0400) && (code <= 0x04FF)));
1407: }
1408:
1409: /**
1410: * xmlUCSIsCyrillicSupplement:
1411: * @code: UCS code point
1412: *
1413: * Check whether the character is part of CyrillicSupplement UCS Block
1414: *
1415: * Returns 1 if true 0 otherwise
1416: */
1417: int
1418: xmlUCSIsCyrillicSupplement(int code) {
1419: return(((code >= 0x0500) && (code <= 0x052F)));
1420: }
1421:
1422: /**
1423: * xmlUCSIsDeseret:
1424: * @code: UCS code point
1425: *
1426: * Check whether the character is part of Deseret UCS Block
1427: *
1428: * Returns 1 if true 0 otherwise
1429: */
1430: int
1431: xmlUCSIsDeseret(int code) {
1432: return(((code >= 0x10400) && (code <= 0x1044F)));
1433: }
1434:
1435: /**
1436: * xmlUCSIsDevanagari:
1437: * @code: UCS code point
1438: *
1439: * Check whether the character is part of Devanagari UCS Block
1440: *
1441: * Returns 1 if true 0 otherwise
1442: */
1443: int
1444: xmlUCSIsDevanagari(int code) {
1445: return(((code >= 0x0900) && (code <= 0x097F)));
1446: }
1447:
1448: /**
1449: * xmlUCSIsDingbats:
1450: * @code: UCS code point
1451: *
1452: * Check whether the character is part of Dingbats UCS Block
1453: *
1454: * Returns 1 if true 0 otherwise
1455: */
1456: int
1457: xmlUCSIsDingbats(int code) {
1458: return(((code >= 0x2700) && (code <= 0x27BF)));
1459: }
1460:
1461: /**
1462: * xmlUCSIsEnclosedAlphanumerics:
1463: * @code: UCS code point
1464: *
1465: * Check whether the character is part of EnclosedAlphanumerics UCS Block
1466: *
1467: * Returns 1 if true 0 otherwise
1468: */
1469: int
1470: xmlUCSIsEnclosedAlphanumerics(int code) {
1471: return(((code >= 0x2460) && (code <= 0x24FF)));
1472: }
1473:
1474: /**
1475: * xmlUCSIsEnclosedCJKLettersandMonths:
1476: * @code: UCS code point
1477: *
1478: * Check whether the character is part of EnclosedCJKLettersandMonths UCS Block
1479: *
1480: * Returns 1 if true 0 otherwise
1481: */
1482: int
1483: xmlUCSIsEnclosedCJKLettersandMonths(int code) {
1484: return(((code >= 0x3200) && (code <= 0x32FF)));
1485: }
1486:
1487: /**
1488: * xmlUCSIsEthiopic:
1489: * @code: UCS code point
1490: *
1491: * Check whether the character is part of Ethiopic UCS Block
1492: *
1493: * Returns 1 if true 0 otherwise
1494: */
1495: int
1496: xmlUCSIsEthiopic(int code) {
1497: return(((code >= 0x1200) && (code <= 0x137F)));
1498: }
1499:
1500: /**
1501: * xmlUCSIsGeneralPunctuation:
1502: * @code: UCS code point
1503: *
1504: * Check whether the character is part of GeneralPunctuation UCS Block
1505: *
1506: * Returns 1 if true 0 otherwise
1507: */
1508: int
1509: xmlUCSIsGeneralPunctuation(int code) {
1510: return(((code >= 0x2000) && (code <= 0x206F)));
1511: }
1512:
1513: /**
1514: * xmlUCSIsGeometricShapes:
1515: * @code: UCS code point
1516: *
1517: * Check whether the character is part of GeometricShapes UCS Block
1518: *
1519: * Returns 1 if true 0 otherwise
1520: */
1521: int
1522: xmlUCSIsGeometricShapes(int code) {
1523: return(((code >= 0x25A0) && (code <= 0x25FF)));
1524: }
1525:
1526: /**
1527: * xmlUCSIsGeorgian:
1528: * @code: UCS code point
1529: *
1530: * Check whether the character is part of Georgian UCS Block
1531: *
1532: * Returns 1 if true 0 otherwise
1533: */
1534: int
1535: xmlUCSIsGeorgian(int code) {
1536: return(((code >= 0x10A0) && (code <= 0x10FF)));
1537: }
1538:
1539: /**
1540: * xmlUCSIsGothic:
1541: * @code: UCS code point
1542: *
1543: * Check whether the character is part of Gothic UCS Block
1544: *
1545: * Returns 1 if true 0 otherwise
1546: */
1547: int
1548: xmlUCSIsGothic(int code) {
1549: return(((code >= 0x10330) && (code <= 0x1034F)));
1550: }
1551:
1552: /**
1553: * xmlUCSIsGreek:
1554: * @code: UCS code point
1555: *
1556: * Check whether the character is part of Greek UCS Block
1557: *
1558: * Returns 1 if true 0 otherwise
1559: */
1560: int
1561: xmlUCSIsGreek(int code) {
1562: return(((code >= 0x0370) && (code <= 0x03FF)));
1563: }
1564:
1565: /**
1566: * xmlUCSIsGreekExtended:
1567: * @code: UCS code point
1568: *
1569: * Check whether the character is part of GreekExtended UCS Block
1570: *
1571: * Returns 1 if true 0 otherwise
1572: */
1573: int
1574: xmlUCSIsGreekExtended(int code) {
1575: return(((code >= 0x1F00) && (code <= 0x1FFF)));
1576: }
1577:
1578: /**
1579: * xmlUCSIsGreekandCoptic:
1580: * @code: UCS code point
1581: *
1582: * Check whether the character is part of GreekandCoptic UCS Block
1583: *
1584: * Returns 1 if true 0 otherwise
1585: */
1586: int
1587: xmlUCSIsGreekandCoptic(int code) {
1588: return(((code >= 0x0370) && (code <= 0x03FF)));
1589: }
1590:
1591: /**
1592: * xmlUCSIsGujarati:
1593: * @code: UCS code point
1594: *
1595: * Check whether the character is part of Gujarati UCS Block
1596: *
1597: * Returns 1 if true 0 otherwise
1598: */
1599: int
1600: xmlUCSIsGujarati(int code) {
1601: return(((code >= 0x0A80) && (code <= 0x0AFF)));
1602: }
1603:
1604: /**
1605: * xmlUCSIsGurmukhi:
1606: * @code: UCS code point
1607: *
1608: * Check whether the character is part of Gurmukhi UCS Block
1609: *
1610: * Returns 1 if true 0 otherwise
1611: */
1612: int
1613: xmlUCSIsGurmukhi(int code) {
1614: return(((code >= 0x0A00) && (code <= 0x0A7F)));
1615: }
1616:
1617: /**
1618: * xmlUCSIsHalfwidthandFullwidthForms:
1619: * @code: UCS code point
1620: *
1621: * Check whether the character is part of HalfwidthandFullwidthForms UCS Block
1622: *
1623: * Returns 1 if true 0 otherwise
1624: */
1625: int
1626: xmlUCSIsHalfwidthandFullwidthForms(int code) {
1627: return(((code >= 0xFF00) && (code <= 0xFFEF)));
1628: }
1629:
1630: /**
1631: * xmlUCSIsHangulCompatibilityJamo:
1632: * @code: UCS code point
1633: *
1634: * Check whether the character is part of HangulCompatibilityJamo UCS Block
1635: *
1636: * Returns 1 if true 0 otherwise
1637: */
1638: int
1639: xmlUCSIsHangulCompatibilityJamo(int code) {
1640: return(((code >= 0x3130) && (code <= 0x318F)));
1641: }
1642:
1643: /**
1644: * xmlUCSIsHangulJamo:
1645: * @code: UCS code point
1646: *
1647: * Check whether the character is part of HangulJamo UCS Block
1648: *
1649: * Returns 1 if true 0 otherwise
1650: */
1651: int
1652: xmlUCSIsHangulJamo(int code) {
1653: return(((code >= 0x1100) && (code <= 0x11FF)));
1654: }
1655:
1656: /**
1657: * xmlUCSIsHangulSyllables:
1658: * @code: UCS code point
1659: *
1660: * Check whether the character is part of HangulSyllables UCS Block
1661: *
1662: * Returns 1 if true 0 otherwise
1663: */
1664: int
1665: xmlUCSIsHangulSyllables(int code) {
1666: return(((code >= 0xAC00) && (code <= 0xD7AF)));
1667: }
1668:
1669: /**
1670: * xmlUCSIsHanunoo:
1671: * @code: UCS code point
1672: *
1673: * Check whether the character is part of Hanunoo UCS Block
1674: *
1675: * Returns 1 if true 0 otherwise
1676: */
1677: int
1678: xmlUCSIsHanunoo(int code) {
1679: return(((code >= 0x1720) && (code <= 0x173F)));
1680: }
1681:
1682: /**
1683: * xmlUCSIsHebrew:
1684: * @code: UCS code point
1685: *
1686: * Check whether the character is part of Hebrew UCS Block
1687: *
1688: * Returns 1 if true 0 otherwise
1689: */
1690: int
1691: xmlUCSIsHebrew(int code) {
1692: return(((code >= 0x0590) && (code <= 0x05FF)));
1693: }
1694:
1695: /**
1696: * xmlUCSIsHighPrivateUseSurrogates:
1697: * @code: UCS code point
1698: *
1699: * Check whether the character is part of HighPrivateUseSurrogates UCS Block
1700: *
1701: * Returns 1 if true 0 otherwise
1702: */
1703: int
1704: xmlUCSIsHighPrivateUseSurrogates(int code) {
1705: return(((code >= 0xDB80) && (code <= 0xDBFF)));
1706: }
1707:
1708: /**
1709: * xmlUCSIsHighSurrogates:
1710: * @code: UCS code point
1711: *
1712: * Check whether the character is part of HighSurrogates UCS Block
1713: *
1714: * Returns 1 if true 0 otherwise
1715: */
1716: int
1717: xmlUCSIsHighSurrogates(int code) {
1718: return(((code >= 0xD800) && (code <= 0xDB7F)));
1719: }
1720:
1721: /**
1722: * xmlUCSIsHiragana:
1723: * @code: UCS code point
1724: *
1725: * Check whether the character is part of Hiragana UCS Block
1726: *
1727: * Returns 1 if true 0 otherwise
1728: */
1729: int
1730: xmlUCSIsHiragana(int code) {
1731: return(((code >= 0x3040) && (code <= 0x309F)));
1732: }
1733:
1734: /**
1735: * xmlUCSIsIPAExtensions:
1736: * @code: UCS code point
1737: *
1738: * Check whether the character is part of IPAExtensions UCS Block
1739: *
1740: * Returns 1 if true 0 otherwise
1741: */
1742: int
1743: xmlUCSIsIPAExtensions(int code) {
1744: return(((code >= 0x0250) && (code <= 0x02AF)));
1745: }
1746:
1747: /**
1748: * xmlUCSIsIdeographicDescriptionCharacters:
1749: * @code: UCS code point
1750: *
1751: * Check whether the character is part of IdeographicDescriptionCharacters UCS Block
1752: *
1753: * Returns 1 if true 0 otherwise
1754: */
1755: int
1756: xmlUCSIsIdeographicDescriptionCharacters(int code) {
1757: return(((code >= 0x2FF0) && (code <= 0x2FFF)));
1758: }
1759:
1760: /**
1761: * xmlUCSIsKanbun:
1762: * @code: UCS code point
1763: *
1764: * Check whether the character is part of Kanbun UCS Block
1765: *
1766: * Returns 1 if true 0 otherwise
1767: */
1768: int
1769: xmlUCSIsKanbun(int code) {
1770: return(((code >= 0x3190) && (code <= 0x319F)));
1771: }
1772:
1773: /**
1774: * xmlUCSIsKangxiRadicals:
1775: * @code: UCS code point
1776: *
1777: * Check whether the character is part of KangxiRadicals UCS Block
1778: *
1779: * Returns 1 if true 0 otherwise
1780: */
1781: int
1782: xmlUCSIsKangxiRadicals(int code) {
1783: return(((code >= 0x2F00) && (code <= 0x2FDF)));
1784: }
1785:
1786: /**
1787: * xmlUCSIsKannada:
1788: * @code: UCS code point
1789: *
1790: * Check whether the character is part of Kannada UCS Block
1791: *
1792: * Returns 1 if true 0 otherwise
1793: */
1794: int
1795: xmlUCSIsKannada(int code) {
1796: return(((code >= 0x0C80) && (code <= 0x0CFF)));
1797: }
1798:
1799: /**
1800: * xmlUCSIsKatakana:
1801: * @code: UCS code point
1802: *
1803: * Check whether the character is part of Katakana UCS Block
1804: *
1805: * Returns 1 if true 0 otherwise
1806: */
1807: int
1808: xmlUCSIsKatakana(int code) {
1809: return(((code >= 0x30A0) && (code <= 0x30FF)));
1810: }
1811:
1812: /**
1813: * xmlUCSIsKatakanaPhoneticExtensions:
1814: * @code: UCS code point
1815: *
1816: * Check whether the character is part of KatakanaPhoneticExtensions UCS Block
1817: *
1818: * Returns 1 if true 0 otherwise
1819: */
1820: int
1821: xmlUCSIsKatakanaPhoneticExtensions(int code) {
1822: return(((code >= 0x31F0) && (code <= 0x31FF)));
1823: }
1824:
1825: /**
1826: * xmlUCSIsKhmer:
1827: * @code: UCS code point
1828: *
1829: * Check whether the character is part of Khmer UCS Block
1830: *
1831: * Returns 1 if true 0 otherwise
1832: */
1833: int
1834: xmlUCSIsKhmer(int code) {
1835: return(((code >= 0x1780) && (code <= 0x17FF)));
1836: }
1837:
1838: /**
1839: * xmlUCSIsKhmerSymbols:
1840: * @code: UCS code point
1841: *
1842: * Check whether the character is part of KhmerSymbols UCS Block
1843: *
1844: * Returns 1 if true 0 otherwise
1845: */
1846: int
1847: xmlUCSIsKhmerSymbols(int code) {
1848: return(((code >= 0x19E0) && (code <= 0x19FF)));
1849: }
1850:
1851: /**
1852: * xmlUCSIsLao:
1853: * @code: UCS code point
1854: *
1855: * Check whether the character is part of Lao UCS Block
1856: *
1857: * Returns 1 if true 0 otherwise
1858: */
1859: int
1860: xmlUCSIsLao(int code) {
1861: return(((code >= 0x0E80) && (code <= 0x0EFF)));
1862: }
1863:
1864: /**
1865: * xmlUCSIsLatin1Supplement:
1866: * @code: UCS code point
1867: *
1868: * Check whether the character is part of Latin-1Supplement UCS Block
1869: *
1870: * Returns 1 if true 0 otherwise
1871: */
1872: int
1873: xmlUCSIsLatin1Supplement(int code) {
1874: return(((code >= 0x0080) && (code <= 0x00FF)));
1875: }
1876:
1877: /**
1878: * xmlUCSIsLatinExtendedA:
1879: * @code: UCS code point
1880: *
1881: * Check whether the character is part of LatinExtended-A UCS Block
1882: *
1883: * Returns 1 if true 0 otherwise
1884: */
1885: int
1886: xmlUCSIsLatinExtendedA(int code) {
1887: return(((code >= 0x0100) && (code <= 0x017F)));
1888: }
1889:
1890: /**
1891: * xmlUCSIsLatinExtendedB:
1892: * @code: UCS code point
1893: *
1894: * Check whether the character is part of LatinExtended-B UCS Block
1895: *
1896: * Returns 1 if true 0 otherwise
1897: */
1898: int
1899: xmlUCSIsLatinExtendedB(int code) {
1900: return(((code >= 0x0180) && (code <= 0x024F)));
1901: }
1902:
1903: /**
1904: * xmlUCSIsLatinExtendedAdditional:
1905: * @code: UCS code point
1906: *
1907: * Check whether the character is part of LatinExtendedAdditional UCS Block
1908: *
1909: * Returns 1 if true 0 otherwise
1910: */
1911: int
1912: xmlUCSIsLatinExtendedAdditional(int code) {
1913: return(((code >= 0x1E00) && (code <= 0x1EFF)));
1914: }
1915:
1916: /**
1917: * xmlUCSIsLetterlikeSymbols:
1918: * @code: UCS code point
1919: *
1920: * Check whether the character is part of LetterlikeSymbols UCS Block
1921: *
1922: * Returns 1 if true 0 otherwise
1923: */
1924: int
1925: xmlUCSIsLetterlikeSymbols(int code) {
1926: return(((code >= 0x2100) && (code <= 0x214F)));
1927: }
1928:
1929: /**
1930: * xmlUCSIsLimbu:
1931: * @code: UCS code point
1932: *
1933: * Check whether the character is part of Limbu UCS Block
1934: *
1935: * Returns 1 if true 0 otherwise
1936: */
1937: int
1938: xmlUCSIsLimbu(int code) {
1939: return(((code >= 0x1900) && (code <= 0x194F)));
1940: }
1941:
1942: /**
1943: * xmlUCSIsLinearBIdeograms:
1944: * @code: UCS code point
1945: *
1946: * Check whether the character is part of LinearBIdeograms UCS Block
1947: *
1948: * Returns 1 if true 0 otherwise
1949: */
1950: int
1951: xmlUCSIsLinearBIdeograms(int code) {
1952: return(((code >= 0x10080) && (code <= 0x100FF)));
1953: }
1954:
1955: /**
1956: * xmlUCSIsLinearBSyllabary:
1957: * @code: UCS code point
1958: *
1959: * Check whether the character is part of LinearBSyllabary UCS Block
1960: *
1961: * Returns 1 if true 0 otherwise
1962: */
1963: int
1964: xmlUCSIsLinearBSyllabary(int code) {
1965: return(((code >= 0x10000) && (code <= 0x1007F)));
1966: }
1967:
1968: /**
1969: * xmlUCSIsLowSurrogates:
1970: * @code: UCS code point
1971: *
1972: * Check whether the character is part of LowSurrogates UCS Block
1973: *
1974: * Returns 1 if true 0 otherwise
1975: */
1976: int
1977: xmlUCSIsLowSurrogates(int code) {
1978: return(((code >= 0xDC00) && (code <= 0xDFFF)));
1979: }
1980:
1981: /**
1982: * xmlUCSIsMalayalam:
1983: * @code: UCS code point
1984: *
1985: * Check whether the character is part of Malayalam UCS Block
1986: *
1987: * Returns 1 if true 0 otherwise
1988: */
1989: int
1990: xmlUCSIsMalayalam(int code) {
1991: return(((code >= 0x0D00) && (code <= 0x0D7F)));
1992: }
1993:
1994: /**
1995: * xmlUCSIsMathematicalAlphanumericSymbols:
1996: * @code: UCS code point
1997: *
1998: * Check whether the character is part of MathematicalAlphanumericSymbols UCS Block
1999: *
2000: * Returns 1 if true 0 otherwise
2001: */
2002: int
2003: xmlUCSIsMathematicalAlphanumericSymbols(int code) {
2004: return(((code >= 0x1D400) && (code <= 0x1D7FF)));
2005: }
2006:
2007: /**
2008: * xmlUCSIsMathematicalOperators:
2009: * @code: UCS code point
2010: *
2011: * Check whether the character is part of MathematicalOperators UCS Block
2012: *
2013: * Returns 1 if true 0 otherwise
2014: */
2015: int
2016: xmlUCSIsMathematicalOperators(int code) {
2017: return(((code >= 0x2200) && (code <= 0x22FF)));
2018: }
2019:
2020: /**
2021: * xmlUCSIsMiscellaneousMathematicalSymbolsA:
2022: * @code: UCS code point
2023: *
2024: * Check whether the character is part of MiscellaneousMathematicalSymbols-A UCS Block
2025: *
2026: * Returns 1 if true 0 otherwise
2027: */
2028: int
2029: xmlUCSIsMiscellaneousMathematicalSymbolsA(int code) {
2030: return(((code >= 0x27C0) && (code <= 0x27EF)));
2031: }
2032:
2033: /**
2034: * xmlUCSIsMiscellaneousMathematicalSymbolsB:
2035: * @code: UCS code point
2036: *
2037: * Check whether the character is part of MiscellaneousMathematicalSymbols-B UCS Block
2038: *
2039: * Returns 1 if true 0 otherwise
2040: */
2041: int
2042: xmlUCSIsMiscellaneousMathematicalSymbolsB(int code) {
2043: return(((code >= 0x2980) && (code <= 0x29FF)));
2044: }
2045:
2046: /**
2047: * xmlUCSIsMiscellaneousSymbols:
2048: * @code: UCS code point
2049: *
2050: * Check whether the character is part of MiscellaneousSymbols UCS Block
2051: *
2052: * Returns 1 if true 0 otherwise
2053: */
2054: int
2055: xmlUCSIsMiscellaneousSymbols(int code) {
2056: return(((code >= 0x2600) && (code <= 0x26FF)));
2057: }
2058:
2059: /**
2060: * xmlUCSIsMiscellaneousSymbolsandArrows:
2061: * @code: UCS code point
2062: *
2063: * Check whether the character is part of MiscellaneousSymbolsandArrows UCS Block
2064: *
2065: * Returns 1 if true 0 otherwise
2066: */
2067: int
2068: xmlUCSIsMiscellaneousSymbolsandArrows(int code) {
2069: return(((code >= 0x2B00) && (code <= 0x2BFF)));
2070: }
2071:
2072: /**
2073: * xmlUCSIsMiscellaneousTechnical:
2074: * @code: UCS code point
2075: *
2076: * Check whether the character is part of MiscellaneousTechnical UCS Block
2077: *
2078: * Returns 1 if true 0 otherwise
2079: */
2080: int
2081: xmlUCSIsMiscellaneousTechnical(int code) {
2082: return(((code >= 0x2300) && (code <= 0x23FF)));
2083: }
2084:
2085: /**
2086: * xmlUCSIsMongolian:
2087: * @code: UCS code point
2088: *
2089: * Check whether the character is part of Mongolian UCS Block
2090: *
2091: * Returns 1 if true 0 otherwise
2092: */
2093: int
2094: xmlUCSIsMongolian(int code) {
2095: return(((code >= 0x1800) && (code <= 0x18AF)));
2096: }
2097:
2098: /**
2099: * xmlUCSIsMusicalSymbols:
2100: * @code: UCS code point
2101: *
2102: * Check whether the character is part of MusicalSymbols UCS Block
2103: *
2104: * Returns 1 if true 0 otherwise
2105: */
2106: int
2107: xmlUCSIsMusicalSymbols(int code) {
2108: return(((code >= 0x1D100) && (code <= 0x1D1FF)));
2109: }
2110:
2111: /**
2112: * xmlUCSIsMyanmar:
2113: * @code: UCS code point
2114: *
2115: * Check whether the character is part of Myanmar UCS Block
2116: *
2117: * Returns 1 if true 0 otherwise
2118: */
2119: int
2120: xmlUCSIsMyanmar(int code) {
2121: return(((code >= 0x1000) && (code <= 0x109F)));
2122: }
2123:
2124: /**
2125: * xmlUCSIsNumberForms:
2126: * @code: UCS code point
2127: *
2128: * Check whether the character is part of NumberForms UCS Block
2129: *
2130: * Returns 1 if true 0 otherwise
2131: */
2132: int
2133: xmlUCSIsNumberForms(int code) {
2134: return(((code >= 0x2150) && (code <= 0x218F)));
2135: }
2136:
2137: /**
2138: * xmlUCSIsOgham:
2139: * @code: UCS code point
2140: *
2141: * Check whether the character is part of Ogham UCS Block
2142: *
2143: * Returns 1 if true 0 otherwise
2144: */
2145: int
2146: xmlUCSIsOgham(int code) {
2147: return(((code >= 0x1680) && (code <= 0x169F)));
2148: }
2149:
2150: /**
2151: * xmlUCSIsOldItalic:
2152: * @code: UCS code point
2153: *
2154: * Check whether the character is part of OldItalic UCS Block
2155: *
2156: * Returns 1 if true 0 otherwise
2157: */
2158: int
2159: xmlUCSIsOldItalic(int code) {
2160: return(((code >= 0x10300) && (code <= 0x1032F)));
2161: }
2162:
2163: /**
2164: * xmlUCSIsOpticalCharacterRecognition:
2165: * @code: UCS code point
2166: *
2167: * Check whether the character is part of OpticalCharacterRecognition UCS Block
2168: *
2169: * Returns 1 if true 0 otherwise
2170: */
2171: int
2172: xmlUCSIsOpticalCharacterRecognition(int code) {
2173: return(((code >= 0x2440) && (code <= 0x245F)));
2174: }
2175:
2176: /**
2177: * xmlUCSIsOriya:
2178: * @code: UCS code point
2179: *
2180: * Check whether the character is part of Oriya UCS Block
2181: *
2182: * Returns 1 if true 0 otherwise
2183: */
2184: int
2185: xmlUCSIsOriya(int code) {
2186: return(((code >= 0x0B00) && (code <= 0x0B7F)));
2187: }
2188:
2189: /**
2190: * xmlUCSIsOsmanya:
2191: * @code: UCS code point
2192: *
2193: * Check whether the character is part of Osmanya UCS Block
2194: *
2195: * Returns 1 if true 0 otherwise
2196: */
2197: int
2198: xmlUCSIsOsmanya(int code) {
2199: return(((code >= 0x10480) && (code <= 0x104AF)));
2200: }
2201:
2202: /**
2203: * xmlUCSIsPhoneticExtensions:
2204: * @code: UCS code point
2205: *
2206: * Check whether the character is part of PhoneticExtensions UCS Block
2207: *
2208: * Returns 1 if true 0 otherwise
2209: */
2210: int
2211: xmlUCSIsPhoneticExtensions(int code) {
2212: return(((code >= 0x1D00) && (code <= 0x1D7F)));
2213: }
2214:
2215: /**
2216: * xmlUCSIsPrivateUse:
2217: * @code: UCS code point
2218: *
2219: * Check whether the character is part of PrivateUse UCS Block
2220: *
2221: * Returns 1 if true 0 otherwise
2222: */
2223: int
2224: xmlUCSIsPrivateUse(int code) {
2225: return(((code >= 0xE000) && (code <= 0xF8FF)) ||
2226: ((code >= 0xF0000) && (code <= 0xFFFFF)) ||
2227: ((code >= 0x100000) && (code <= 0x10FFFF)));
2228: }
2229:
2230: /**
2231: * xmlUCSIsPrivateUseArea:
2232: * @code: UCS code point
2233: *
2234: * Check whether the character is part of PrivateUseArea UCS Block
2235: *
2236: * Returns 1 if true 0 otherwise
2237: */
2238: int
2239: xmlUCSIsPrivateUseArea(int code) {
2240: return(((code >= 0xE000) && (code <= 0xF8FF)));
2241: }
2242:
2243: /**
2244: * xmlUCSIsRunic:
2245: * @code: UCS code point
2246: *
2247: * Check whether the character is part of Runic UCS Block
2248: *
2249: * Returns 1 if true 0 otherwise
2250: */
2251: int
2252: xmlUCSIsRunic(int code) {
2253: return(((code >= 0x16A0) && (code <= 0x16FF)));
2254: }
2255:
2256: /**
2257: * xmlUCSIsShavian:
2258: * @code: UCS code point
2259: *
2260: * Check whether the character is part of Shavian UCS Block
2261: *
2262: * Returns 1 if true 0 otherwise
2263: */
2264: int
2265: xmlUCSIsShavian(int code) {
2266: return(((code >= 0x10450) && (code <= 0x1047F)));
2267: }
2268:
2269: /**
2270: * xmlUCSIsSinhala:
2271: * @code: UCS code point
2272: *
2273: * Check whether the character is part of Sinhala UCS Block
2274: *
2275: * Returns 1 if true 0 otherwise
2276: */
2277: int
2278: xmlUCSIsSinhala(int code) {
2279: return(((code >= 0x0D80) && (code <= 0x0DFF)));
2280: }
2281:
2282: /**
2283: * xmlUCSIsSmallFormVariants:
2284: * @code: UCS code point
2285: *
2286: * Check whether the character is part of SmallFormVariants UCS Block
2287: *
2288: * Returns 1 if true 0 otherwise
2289: */
2290: int
2291: xmlUCSIsSmallFormVariants(int code) {
2292: return(((code >= 0xFE50) && (code <= 0xFE6F)));
2293: }
2294:
2295: /**
2296: * xmlUCSIsSpacingModifierLetters:
2297: * @code: UCS code point
2298: *
2299: * Check whether the character is part of SpacingModifierLetters UCS Block
2300: *
2301: * Returns 1 if true 0 otherwise
2302: */
2303: int
2304: xmlUCSIsSpacingModifierLetters(int code) {
2305: return(((code >= 0x02B0) && (code <= 0x02FF)));
2306: }
2307:
2308: /**
2309: * xmlUCSIsSpecials:
2310: * @code: UCS code point
2311: *
2312: * Check whether the character is part of Specials UCS Block
2313: *
2314: * Returns 1 if true 0 otherwise
2315: */
2316: int
2317: xmlUCSIsSpecials(int code) {
2318: return(((code >= 0xFFF0) && (code <= 0xFFFF)));
2319: }
2320:
2321: /**
2322: * xmlUCSIsSuperscriptsandSubscripts:
2323: * @code: UCS code point
2324: *
2325: * Check whether the character is part of SuperscriptsandSubscripts UCS Block
2326: *
2327: * Returns 1 if true 0 otherwise
2328: */
2329: int
2330: xmlUCSIsSuperscriptsandSubscripts(int code) {
2331: return(((code >= 0x2070) && (code <= 0x209F)));
2332: }
2333:
2334: /**
2335: * xmlUCSIsSupplementalArrowsA:
2336: * @code: UCS code point
2337: *
2338: * Check whether the character is part of SupplementalArrows-A UCS Block
2339: *
2340: * Returns 1 if true 0 otherwise
2341: */
2342: int
2343: xmlUCSIsSupplementalArrowsA(int code) {
2344: return(((code >= 0x27F0) && (code <= 0x27FF)));
2345: }
2346:
2347: /**
2348: * xmlUCSIsSupplementalArrowsB:
2349: * @code: UCS code point
2350: *
2351: * Check whether the character is part of SupplementalArrows-B UCS Block
2352: *
2353: * Returns 1 if true 0 otherwise
2354: */
2355: int
2356: xmlUCSIsSupplementalArrowsB(int code) {
2357: return(((code >= 0x2900) && (code <= 0x297F)));
2358: }
2359:
2360: /**
2361: * xmlUCSIsSupplementalMathematicalOperators:
2362: * @code: UCS code point
2363: *
2364: * Check whether the character is part of SupplementalMathematicalOperators UCS Block
2365: *
2366: * Returns 1 if true 0 otherwise
2367: */
2368: int
2369: xmlUCSIsSupplementalMathematicalOperators(int code) {
2370: return(((code >= 0x2A00) && (code <= 0x2AFF)));
2371: }
2372:
2373: /**
2374: * xmlUCSIsSupplementaryPrivateUseAreaA:
2375: * @code: UCS code point
2376: *
2377: * Check whether the character is part of SupplementaryPrivateUseArea-A UCS Block
2378: *
2379: * Returns 1 if true 0 otherwise
2380: */
2381: int
2382: xmlUCSIsSupplementaryPrivateUseAreaA(int code) {
2383: return(((code >= 0xF0000) && (code <= 0xFFFFF)));
2384: }
2385:
2386: /**
2387: * xmlUCSIsSupplementaryPrivateUseAreaB:
2388: * @code: UCS code point
2389: *
2390: * Check whether the character is part of SupplementaryPrivateUseArea-B UCS Block
2391: *
2392: * Returns 1 if true 0 otherwise
2393: */
2394: int
2395: xmlUCSIsSupplementaryPrivateUseAreaB(int code) {
2396: return(((code >= 0x100000) && (code <= 0x10FFFF)));
2397: }
2398:
2399: /**
2400: * xmlUCSIsSyriac:
2401: * @code: UCS code point
2402: *
2403: * Check whether the character is part of Syriac UCS Block
2404: *
2405: * Returns 1 if true 0 otherwise
2406: */
2407: int
2408: xmlUCSIsSyriac(int code) {
2409: return(((code >= 0x0700) && (code <= 0x074F)));
2410: }
2411:
2412: /**
2413: * xmlUCSIsTagalog:
2414: * @code: UCS code point
2415: *
2416: * Check whether the character is part of Tagalog UCS Block
2417: *
2418: * Returns 1 if true 0 otherwise
2419: */
2420: int
2421: xmlUCSIsTagalog(int code) {
2422: return(((code >= 0x1700) && (code <= 0x171F)));
2423: }
2424:
2425: /**
2426: * xmlUCSIsTagbanwa:
2427: * @code: UCS code point
2428: *
2429: * Check whether the character is part of Tagbanwa UCS Block
2430: *
2431: * Returns 1 if true 0 otherwise
2432: */
2433: int
2434: xmlUCSIsTagbanwa(int code) {
2435: return(((code >= 0x1760) && (code <= 0x177F)));
2436: }
2437:
2438: /**
2439: * xmlUCSIsTags:
2440: * @code: UCS code point
2441: *
2442: * Check whether the character is part of Tags UCS Block
2443: *
2444: * Returns 1 if true 0 otherwise
2445: */
2446: int
2447: xmlUCSIsTags(int code) {
2448: return(((code >= 0xE0000) && (code <= 0xE007F)));
2449: }
2450:
2451: /**
2452: * xmlUCSIsTaiLe:
2453: * @code: UCS code point
2454: *
2455: * Check whether the character is part of TaiLe UCS Block
2456: *
2457: * Returns 1 if true 0 otherwise
2458: */
2459: int
2460: xmlUCSIsTaiLe(int code) {
2461: return(((code >= 0x1950) && (code <= 0x197F)));
2462: }
2463:
2464: /**
2465: * xmlUCSIsTaiXuanJingSymbols:
2466: * @code: UCS code point
2467: *
2468: * Check whether the character is part of TaiXuanJingSymbols UCS Block
2469: *
2470: * Returns 1 if true 0 otherwise
2471: */
2472: int
2473: xmlUCSIsTaiXuanJingSymbols(int code) {
2474: return(((code >= 0x1D300) && (code <= 0x1D35F)));
2475: }
2476:
2477: /**
2478: * xmlUCSIsTamil:
2479: * @code: UCS code point
2480: *
2481: * Check whether the character is part of Tamil UCS Block
2482: *
2483: * Returns 1 if true 0 otherwise
2484: */
2485: int
2486: xmlUCSIsTamil(int code) {
2487: return(((code >= 0x0B80) && (code <= 0x0BFF)));
2488: }
2489:
2490: /**
2491: * xmlUCSIsTelugu:
2492: * @code: UCS code point
2493: *
2494: * Check whether the character is part of Telugu UCS Block
2495: *
2496: * Returns 1 if true 0 otherwise
2497: */
2498: int
2499: xmlUCSIsTelugu(int code) {
2500: return(((code >= 0x0C00) && (code <= 0x0C7F)));
2501: }
2502:
2503: /**
2504: * xmlUCSIsThaana:
2505: * @code: UCS code point
2506: *
2507: * Check whether the character is part of Thaana UCS Block
2508: *
2509: * Returns 1 if true 0 otherwise
2510: */
2511: int
2512: xmlUCSIsThaana(int code) {
2513: return(((code >= 0x0780) && (code <= 0x07BF)));
2514: }
2515:
2516: /**
2517: * xmlUCSIsThai:
2518: * @code: UCS code point
2519: *
2520: * Check whether the character is part of Thai UCS Block
2521: *
2522: * Returns 1 if true 0 otherwise
2523: */
2524: int
2525: xmlUCSIsThai(int code) {
2526: return(((code >= 0x0E00) && (code <= 0x0E7F)));
2527: }
2528:
2529: /**
2530: * xmlUCSIsTibetan:
2531: * @code: UCS code point
2532: *
2533: * Check whether the character is part of Tibetan UCS Block
2534: *
2535: * Returns 1 if true 0 otherwise
2536: */
2537: int
2538: xmlUCSIsTibetan(int code) {
2539: return(((code >= 0x0F00) && (code <= 0x0FFF)));
2540: }
2541:
2542: /**
2543: * xmlUCSIsUgaritic:
2544: * @code: UCS code point
2545: *
2546: * Check whether the character is part of Ugaritic UCS Block
2547: *
2548: * Returns 1 if true 0 otherwise
2549: */
2550: int
2551: xmlUCSIsUgaritic(int code) {
2552: return(((code >= 0x10380) && (code <= 0x1039F)));
2553: }
2554:
2555: /**
2556: * xmlUCSIsUnifiedCanadianAboriginalSyllabics:
2557: * @code: UCS code point
2558: *
2559: * Check whether the character is part of UnifiedCanadianAboriginalSyllabics UCS Block
2560: *
2561: * Returns 1 if true 0 otherwise
2562: */
2563: int
2564: xmlUCSIsUnifiedCanadianAboriginalSyllabics(int code) {
2565: return(((code >= 0x1400) && (code <= 0x167F)));
2566: }
2567:
2568: /**
2569: * xmlUCSIsVariationSelectors:
2570: * @code: UCS code point
2571: *
2572: * Check whether the character is part of VariationSelectors UCS Block
2573: *
2574: * Returns 1 if true 0 otherwise
2575: */
2576: int
2577: xmlUCSIsVariationSelectors(int code) {
2578: return(((code >= 0xFE00) && (code <= 0xFE0F)));
2579: }
2580:
2581: /**
2582: * xmlUCSIsVariationSelectorsSupplement:
2583: * @code: UCS code point
2584: *
2585: * Check whether the character is part of VariationSelectorsSupplement UCS Block
2586: *
2587: * Returns 1 if true 0 otherwise
2588: */
2589: int
2590: xmlUCSIsVariationSelectorsSupplement(int code) {
2591: return(((code >= 0xE0100) && (code <= 0xE01EF)));
2592: }
2593:
2594: /**
2595: * xmlUCSIsYiRadicals:
2596: * @code: UCS code point
2597: *
2598: * Check whether the character is part of YiRadicals UCS Block
2599: *
2600: * Returns 1 if true 0 otherwise
2601: */
2602: int
2603: xmlUCSIsYiRadicals(int code) {
2604: return(((code >= 0xA490) && (code <= 0xA4CF)));
2605: }
2606:
2607: /**
2608: * xmlUCSIsYiSyllables:
2609: * @code: UCS code point
2610: *
2611: * Check whether the character is part of YiSyllables UCS Block
2612: *
2613: * Returns 1 if true 0 otherwise
2614: */
2615: int
2616: xmlUCSIsYiSyllables(int code) {
2617: return(((code >= 0xA000) && (code <= 0xA48F)));
2618: }
2619:
2620: /**
2621: * xmlUCSIsYijingHexagramSymbols:
2622: * @code: UCS code point
2623: *
2624: * Check whether the character is part of YijingHexagramSymbols UCS Block
2625: *
2626: * Returns 1 if true 0 otherwise
2627: */
2628: int
2629: xmlUCSIsYijingHexagramSymbols(int code) {
2630: return(((code >= 0x4DC0) && (code <= 0x4DFF)));
2631: }
2632:
2633: /**
2634: * xmlUCSIsBlock:
2635: * @code: UCS code point
2636: * @block: UCS block name
2637: *
2638: * Check whether the character is part of the UCS Block
2639: *
2640: * Returns 1 if true, 0 if false and -1 on unknown block
2641: */
2642: int
2643: xmlUCSIsBlock(int code, const char *block) {
2644: xmlIntFunc *func;
2645:
2646: func = xmlUnicodeLookup(&xmlUnicodeBlockTbl, block);
2647: if (func == NULL)
2648: return (-1);
2649: return (func(code));
2650: }
2651:
2652: /**
2653: * xmlUCSIsCatC:
2654: * @code: UCS code point
2655: *
2656: * Check whether the character is part of C UCS Category
2657: *
2658: * Returns 1 if true 0 otherwise
2659: */
2660: int
2661: xmlUCSIsCatC(int code) {
2662: return(xmlCharInRange((unsigned int)code, &xmlCG));
2663: }
2664:
2665: /**
2666: * xmlUCSIsCatCc:
2667: * @code: UCS code point
2668: *
2669: * Check whether the character is part of Cc UCS Category
2670: *
2671: * Returns 1 if true 0 otherwise
2672: */
2673: int
2674: xmlUCSIsCatCc(int code) {
2675: return(((code >= 0x0) && (code <= 0x1f)) ||
2676: ((code >= 0x7f) && (code <= 0x9f)));
2677: }
2678:
2679: /**
2680: * xmlUCSIsCatCf:
2681: * @code: UCS code point
2682: *
2683: * Check whether the character is part of Cf UCS Category
2684: *
2685: * Returns 1 if true 0 otherwise
2686: */
2687: int
2688: xmlUCSIsCatCf(int code) {
2689: return(xmlCharInRange((unsigned int)code, &xmlCfG));
2690: }
2691:
2692: /**
2693: * xmlUCSIsCatCo:
2694: * @code: UCS code point
2695: *
2696: * Check whether the character is part of Co UCS Category
2697: *
2698: * Returns 1 if true 0 otherwise
2699: */
2700: int
2701: xmlUCSIsCatCo(int code) {
2702: return((code == 0xe000) ||
2703: (code == 0xf8ff) ||
2704: (code == 0xf0000) ||
2705: (code == 0xffffd) ||
2706: (code == 0x100000) ||
2707: (code == 0x10fffd));
2708: }
2709:
2710: /**
2711: * xmlUCSIsCatCs:
2712: * @code: UCS code point
2713: *
2714: * Check whether the character is part of Cs UCS Category
2715: *
2716: * Returns 1 if true 0 otherwise
2717: */
2718: int
2719: xmlUCSIsCatCs(int code) {
2720: return((code == 0xd800) ||
2721: ((code >= 0xdb7f) && (code <= 0xdb80)) ||
2722: ((code >= 0xdbff) && (code <= 0xdc00)) ||
2723: (code == 0xdfff));
2724: }
2725:
2726: /**
2727: * xmlUCSIsCatL:
2728: * @code: UCS code point
2729: *
2730: * Check whether the character is part of L UCS Category
2731: *
2732: * Returns 1 if true 0 otherwise
2733: */
2734: int
2735: xmlUCSIsCatL(int code) {
2736: return(xmlCharInRange((unsigned int)code, &xmlLG));
2737: }
2738:
2739: /**
2740: * xmlUCSIsCatLl:
2741: * @code: UCS code point
2742: *
2743: * Check whether the character is part of Ll UCS Category
2744: *
2745: * Returns 1 if true 0 otherwise
2746: */
2747: int
2748: xmlUCSIsCatLl(int code) {
2749: return(xmlCharInRange((unsigned int)code, &xmlLlG));
2750: }
2751:
2752: /**
2753: * xmlUCSIsCatLm:
2754: * @code: UCS code point
2755: *
2756: * Check whether the character is part of Lm UCS Category
2757: *
2758: * Returns 1 if true 0 otherwise
2759: */
2760: int
2761: xmlUCSIsCatLm(int code) {
2762: return(xmlCharInRange((unsigned int)code, &xmlLmG));
2763: }
2764:
2765: /**
2766: * xmlUCSIsCatLo:
2767: * @code: UCS code point
2768: *
2769: * Check whether the character is part of Lo UCS Category
2770: *
2771: * Returns 1 if true 0 otherwise
2772: */
2773: int
2774: xmlUCSIsCatLo(int code) {
2775: return(xmlCharInRange((unsigned int)code, &xmlLoG));
2776: }
2777:
2778: /**
2779: * xmlUCSIsCatLt:
2780: * @code: UCS code point
2781: *
2782: * Check whether the character is part of Lt UCS Category
2783: *
2784: * Returns 1 if true 0 otherwise
2785: */
2786: int
2787: xmlUCSIsCatLt(int code) {
2788: return(xmlCharInRange((unsigned int)code, &xmlLtG));
2789: }
2790:
2791: /**
2792: * xmlUCSIsCatLu:
2793: * @code: UCS code point
2794: *
2795: * Check whether the character is part of Lu UCS Category
2796: *
2797: * Returns 1 if true 0 otherwise
2798: */
2799: int
2800: xmlUCSIsCatLu(int code) {
2801: return(xmlCharInRange((unsigned int)code, &xmlLuG));
2802: }
2803:
2804: /**
2805: * xmlUCSIsCatM:
2806: * @code: UCS code point
2807: *
2808: * Check whether the character is part of M UCS Category
2809: *
2810: * Returns 1 if true 0 otherwise
2811: */
2812: int
2813: xmlUCSIsCatM(int code) {
2814: return(xmlCharInRange((unsigned int)code, &xmlMG));
2815: }
2816:
2817: /**
2818: * xmlUCSIsCatMc:
2819: * @code: UCS code point
2820: *
2821: * Check whether the character is part of Mc UCS Category
2822: *
2823: * Returns 1 if true 0 otherwise
2824: */
2825: int
2826: xmlUCSIsCatMc(int code) {
2827: return(xmlCharInRange((unsigned int)code, &xmlMcG));
2828: }
2829:
2830: /**
2831: * xmlUCSIsCatMe:
2832: * @code: UCS code point
2833: *
2834: * Check whether the character is part of Me UCS Category
2835: *
2836: * Returns 1 if true 0 otherwise
2837: */
2838: int
2839: xmlUCSIsCatMe(int code) {
2840: return(((code >= 0x488) && (code <= 0x489)) ||
2841: (code == 0x6de) ||
2842: ((code >= 0x20dd) && (code <= 0x20e0)) ||
2843: ((code >= 0x20e2) && (code <= 0x20e4)));
2844: }
2845:
2846: /**
2847: * xmlUCSIsCatMn:
2848: * @code: UCS code point
2849: *
2850: * Check whether the character is part of Mn UCS Category
2851: *
2852: * Returns 1 if true 0 otherwise
2853: */
2854: int
2855: xmlUCSIsCatMn(int code) {
2856: return(xmlCharInRange((unsigned int)code, &xmlMnG));
2857: }
2858:
2859: /**
2860: * xmlUCSIsCatN:
2861: * @code: UCS code point
2862: *
2863: * Check whether the character is part of N UCS Category
2864: *
2865: * Returns 1 if true 0 otherwise
2866: */
2867: int
2868: xmlUCSIsCatN(int code) {
2869: return(xmlCharInRange((unsigned int)code, &xmlNG));
2870: }
2871:
2872: /**
2873: * xmlUCSIsCatNd:
2874: * @code: UCS code point
2875: *
2876: * Check whether the character is part of Nd UCS Category
2877: *
2878: * Returns 1 if true 0 otherwise
2879: */
2880: int
2881: xmlUCSIsCatNd(int code) {
2882: return(xmlCharInRange((unsigned int)code, &xmlNdG));
2883: }
2884:
2885: /**
2886: * xmlUCSIsCatNl:
2887: * @code: UCS code point
2888: *
2889: * Check whether the character is part of Nl UCS Category
2890: *
2891: * Returns 1 if true 0 otherwise
2892: */
2893: int
2894: xmlUCSIsCatNl(int code) {
2895: return(((code >= 0x16ee) && (code <= 0x16f0)) ||
2896: ((code >= 0x2160) && (code <= 0x2183)) ||
2897: (code == 0x3007) ||
2898: ((code >= 0x3021) && (code <= 0x3029)) ||
2899: ((code >= 0x3038) && (code <= 0x303a)) ||
2900: (code == 0x1034a));
2901: }
2902:
2903: /**
2904: * xmlUCSIsCatNo:
2905: * @code: UCS code point
2906: *
2907: * Check whether the character is part of No UCS Category
2908: *
2909: * Returns 1 if true 0 otherwise
2910: */
2911: int
2912: xmlUCSIsCatNo(int code) {
2913: return(xmlCharInRange((unsigned int)code, &xmlNoG));
2914: }
2915:
2916: /**
2917: * xmlUCSIsCatP:
2918: * @code: UCS code point
2919: *
2920: * Check whether the character is part of P UCS Category
2921: *
2922: * Returns 1 if true 0 otherwise
2923: */
2924: int
2925: xmlUCSIsCatP(int code) {
2926: return(xmlCharInRange((unsigned int)code, &xmlPG));
2927: }
2928:
2929: /**
2930: * xmlUCSIsCatPc:
2931: * @code: UCS code point
2932: *
2933: * Check whether the character is part of Pc UCS Category
2934: *
2935: * Returns 1 if true 0 otherwise
2936: */
2937: int
2938: xmlUCSIsCatPc(int code) {
2939: return((code == 0x5f) ||
2940: ((code >= 0x203f) && (code <= 0x2040)) ||
2941: (code == 0x2054) ||
2942: (code == 0x30fb) ||
2943: ((code >= 0xfe33) && (code <= 0xfe34)) ||
2944: ((code >= 0xfe4d) && (code <= 0xfe4f)) ||
2945: (code == 0xff3f) ||
2946: (code == 0xff65));
2947: }
2948:
2949: /**
2950: * xmlUCSIsCatPd:
2951: * @code: UCS code point
2952: *
2953: * Check whether the character is part of Pd UCS Category
2954: *
2955: * Returns 1 if true 0 otherwise
2956: */
2957: int
2958: xmlUCSIsCatPd(int code) {
2959: return(xmlCharInRange((unsigned int)code, &xmlPdG));
2960: }
2961:
2962: /**
2963: * xmlUCSIsCatPe:
2964: * @code: UCS code point
2965: *
2966: * Check whether the character is part of Pe UCS Category
2967: *
2968: * Returns 1 if true 0 otherwise
2969: */
2970: int
2971: xmlUCSIsCatPe(int code) {
2972: return(xmlCharInRange((unsigned int)code, &xmlPeG));
2973: }
2974:
2975: /**
2976: * xmlUCSIsCatPf:
2977: * @code: UCS code point
2978: *
2979: * Check whether the character is part of Pf UCS Category
2980: *
2981: * Returns 1 if true 0 otherwise
2982: */
2983: int
2984: xmlUCSIsCatPf(int code) {
2985: return((code == 0xbb) ||
2986: (code == 0x2019) ||
2987: (code == 0x201d) ||
2988: (code == 0x203a));
2989: }
2990:
2991: /**
2992: * xmlUCSIsCatPi:
2993: * @code: UCS code point
2994: *
2995: * Check whether the character is part of Pi UCS Category
2996: *
2997: * Returns 1 if true 0 otherwise
2998: */
2999: int
3000: xmlUCSIsCatPi(int code) {
3001: return((code == 0xab) ||
3002: (code == 0x2018) ||
3003: ((code >= 0x201b) && (code <= 0x201c)) ||
3004: (code == 0x201f) ||
3005: (code == 0x2039));
3006: }
3007:
3008: /**
3009: * xmlUCSIsCatPo:
3010: * @code: UCS code point
3011: *
3012: * Check whether the character is part of Po UCS Category
3013: *
3014: * Returns 1 if true 0 otherwise
3015: */
3016: int
3017: xmlUCSIsCatPo(int code) {
3018: return(xmlCharInRange((unsigned int)code, &xmlPoG));
3019: }
3020:
3021: /**
3022: * xmlUCSIsCatPs:
3023: * @code: UCS code point
3024: *
3025: * Check whether the character is part of Ps UCS Category
3026: *
3027: * Returns 1 if true 0 otherwise
3028: */
3029: int
3030: xmlUCSIsCatPs(int code) {
3031: return(xmlCharInRange((unsigned int)code, &xmlPsG));
3032: }
3033:
3034: /**
3035: * xmlUCSIsCatS:
3036: * @code: UCS code point
3037: *
3038: * Check whether the character is part of S UCS Category
3039: *
3040: * Returns 1 if true 0 otherwise
3041: */
3042: int
3043: xmlUCSIsCatS(int code) {
3044: return(xmlCharInRange((unsigned int)code, &xmlSG));
3045: }
3046:
3047: /**
3048: * xmlUCSIsCatSc:
3049: * @code: UCS code point
3050: *
3051: * Check whether the character is part of Sc UCS Category
3052: *
3053: * Returns 1 if true 0 otherwise
3054: */
3055: int
3056: xmlUCSIsCatSc(int code) {
3057: return(xmlCharInRange((unsigned int)code, &xmlScG));
3058: }
3059:
3060: /**
3061: * xmlUCSIsCatSk:
3062: * @code: UCS code point
3063: *
3064: * Check whether the character is part of Sk UCS Category
3065: *
3066: * Returns 1 if true 0 otherwise
3067: */
3068: int
3069: xmlUCSIsCatSk(int code) {
3070: return(xmlCharInRange((unsigned int)code, &xmlSkG));
3071: }
3072:
3073: /**
3074: * xmlUCSIsCatSm:
3075: * @code: UCS code point
3076: *
3077: * Check whether the character is part of Sm UCS Category
3078: *
3079: * Returns 1 if true 0 otherwise
3080: */
3081: int
3082: xmlUCSIsCatSm(int code) {
3083: return(xmlCharInRange((unsigned int)code, &xmlSmG));
3084: }
3085:
3086: /**
3087: * xmlUCSIsCatSo:
3088: * @code: UCS code point
3089: *
3090: * Check whether the character is part of So UCS Category
3091: *
3092: * Returns 1 if true 0 otherwise
3093: */
3094: int
3095: xmlUCSIsCatSo(int code) {
3096: return(xmlCharInRange((unsigned int)code, &xmlSoG));
3097: }
3098:
3099: /**
3100: * xmlUCSIsCatZ:
3101: * @code: UCS code point
3102: *
3103: * Check whether the character is part of Z UCS Category
3104: *
3105: * Returns 1 if true 0 otherwise
3106: */
3107: int
3108: xmlUCSIsCatZ(int code) {
3109: return(xmlCharInRange((unsigned int)code, &xmlZG));
3110: }
3111:
3112: /**
3113: * xmlUCSIsCatZl:
3114: * @code: UCS code point
3115: *
3116: * Check whether the character is part of Zl UCS Category
3117: *
3118: * Returns 1 if true 0 otherwise
3119: */
3120: int
3121: xmlUCSIsCatZl(int code) {
3122: return((code == 0x2028));
3123: }
3124:
3125: /**
3126: * xmlUCSIsCatZp:
3127: * @code: UCS code point
3128: *
3129: * Check whether the character is part of Zp UCS Category
3130: *
3131: * Returns 1 if true 0 otherwise
3132: */
3133: int
3134: xmlUCSIsCatZp(int code) {
3135: return((code == 0x2029));
3136: }
3137:
3138: /**
3139: * xmlUCSIsCatZs:
3140: * @code: UCS code point
3141: *
3142: * Check whether the character is part of Zs UCS Category
3143: *
3144: * Returns 1 if true 0 otherwise
3145: */
3146: int
3147: xmlUCSIsCatZs(int code) {
3148: return((code == 0x20) ||
3149: (code == 0xa0) ||
3150: (code == 0x1680) ||
3151: (code == 0x180e) ||
3152: ((code >= 0x2000) && (code <= 0x200a)) ||
3153: (code == 0x202f) ||
3154: (code == 0x205f) ||
3155: (code == 0x3000));
3156: }
3157:
3158: /**
3159: * xmlUCSIsCat:
3160: * @code: UCS code point
3161: * @cat: UCS Category name
3162: *
3163: * Check whether the character is part of the UCS Category
3164: *
3165: * Returns 1 if true, 0 if false and -1 on unknown category
3166: */
3167: int
3168: xmlUCSIsCat(int code, const char *cat) {
3169: xmlIntFunc *func;
3170:
3171: func = xmlUnicodeLookup(&xmlUnicodeCatTbl, cat);
3172: if (func == NULL)
3173: return (-1);
3174: return (func(code));
3175: }
3176:
3177: #define bottom_xmlunicode
3178: #include "elfgcchack.h"
3179: #endif /* LIBXML_UNICODE_ENABLED */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>