diff options
author | William M. Brack <wbrack@src.gnome.org> | 2003-11-09 12:45:26 +0000 |
---|---|---|
committer | William M. Brack <wbrack@src.gnome.org> | 2003-11-09 12:45:26 +0000 |
commit | ea939087b982cffc39521369632fe34243f3153a (patch) | |
tree | a338bd6151399eee84d13c82a2bfb2ee673066ac | |
parent | fe9fc792ed75c3af076f230bc3c787d701e80fdc (diff) | |
download | libxml2-ea939087b982cffc39521369632fe34243f3153a.tar.gz |
enhanced for range checking, updated to Unicode version 4.0.1 (API docs
* genUnicode.py, xmlunicode.c, include/libxml/xmlunicode.h,
python/libxml2class.txt: enhanced for range checking,
updated to Unicode version 4.0.1 (API docs also updated)
* python/generator.py: minor change to fix a warning
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | doc/libxml2-api.xml | 1296 | ||||
-rwxr-xr-x | genUnicode.py | 462 | ||||
-rw-r--r-- | include/libxml/xmlunicode.h | 44 | ||||
-rwxr-xr-x | python/generator.py | 1 | ||||
-rw-r--r-- | python/libxml2class.txt | 32 | ||||
-rw-r--r-- | win32/libxml2.def.src | 111 | ||||
-rw-r--r-- | xmlunicode.c | 3983 |
8 files changed, 2722 insertions, 3214 deletions
@@ -1,3 +1,10 @@ +Sun Nov 9 20:28:21 HKT 2003 William Brack <wbrack@mmm.com.hk> + + * genUnicode.py, xmlunicode.c, include/libxml/xmlunicode.h, + python/libxml2class.txt: enhanced for range checking, + updated to Unicode version 4.0.1 (API docs also updated) + * python/generator.py: minor change to fix a warning + Wed Nov 5 23:46:36 CET 2003 Daniel Veillard <daniel@veillard.com> * Makefile.am: apply fix from Karl Eichwalder for script path diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml index 795a0396..408bd38e 100644 --- a/doc/libxml2-api.xml +++ b/doc/libxml2-api.xml @@ -1,105 +1,6 @@ <?xml version="1.0" encoding="ISO-8859-1"?> <api name='libxml2'> <files> - <file name='debugXML'> - <exports symbol='_xmlShellCtxt'/> - <exports symbol='xmlBoolToText'/> - <exports symbol='xmlDebugDumpAttr'/> - <exports symbol='xmlDebugDumpAttrList'/> - <exports symbol='xmlDebugDumpDTD'/> - <exports symbol='xmlDebugDumpDocument'/> - <exports symbol='xmlDebugDumpDocumentHead'/> - <exports symbol='xmlDebugDumpEntities'/> - <exports symbol='xmlDebugDumpNode'/> - <exports symbol='xmlDebugDumpNodeList'/> - <exports symbol='xmlDebugDumpOneNode'/> - <exports symbol='xmlDebugDumpString'/> - <exports symbol='xmlLsCountNode'/> - <exports symbol='xmlLsOneNode'/> - <exports symbol='xmlShell'/> - <exports symbol='xmlShellBase'/> - <exports symbol='xmlShellCat'/> - <exports symbol='xmlShellCmd'/> - <exports symbol='xmlShellCtxt'/> - <exports symbol='xmlShellCtxtPtr'/> - <exports symbol='xmlShellDir'/> - <exports symbol='xmlShellDu'/> - <exports symbol='xmlShellList'/> - <exports symbol='xmlShellLoad'/> - <exports symbol='xmlShellPrintNode'/> - <exports symbol='xmlShellPrintXPathError'/> - <exports symbol='xmlShellPrintXPathResult'/> - <exports symbol='xmlShellPwd'/> - <exports symbol='xmlShellReadlineFunc'/> - <exports symbol='xmlShellSave'/> - <exports symbol='xmlShellValidate'/> - <exports symbol='xmlShellWrite'/> - </file> - <file name='xpointer'> - <exports symbol='_xmlLocationSet'/> - <exports symbol='xmlLocationSet'/> - <exports symbol='xmlLocationSetPtr'/> - <exports symbol='xmlXPtrBuildNodeList'/> - <exports symbol='xmlXPtrEval'/> - <exports symbol='xmlXPtrEvalRangePredicate'/> - <exports symbol='xmlXPtrFreeLocationSet'/> - <exports symbol='xmlXPtrLocationSetAdd'/> - <exports symbol='xmlXPtrLocationSetCreate'/> - <exports symbol='xmlXPtrLocationSetDel'/> - <exports symbol='xmlXPtrLocationSetMerge'/> - <exports symbol='xmlXPtrLocationSetRemove'/> - <exports symbol='xmlXPtrNewCollapsedRange'/> - <exports symbol='xmlXPtrNewContext'/> - <exports symbol='xmlXPtrNewLocationSetNodeSet'/> - <exports symbol='xmlXPtrNewLocationSetNodes'/> - <exports symbol='xmlXPtrNewRange'/> - <exports symbol='xmlXPtrNewRangeNodeObject'/> - <exports symbol='xmlXPtrNewRangeNodePoint'/> - <exports symbol='xmlXPtrNewRangeNodes'/> - <exports symbol='xmlXPtrNewRangePointNode'/> - <exports symbol='xmlXPtrNewRangePoints'/> - <exports symbol='xmlXPtrRangeToFunction'/> - <exports symbol='xmlXPtrWrapLocationSet'/> - </file> - <file name='SAX'> - <exports symbol='attribute'/> - <exports symbol='attributeDecl'/> - <exports symbol='cdataBlock'/> - <exports symbol='characters'/> - <exports symbol='checkNamespace'/> - <exports symbol='comment'/> - <exports symbol='elementDecl'/> - <exports symbol='endDocument'/> - <exports symbol='endElement'/> - <exports symbol='entityDecl'/> - <exports symbol='externalSubset'/> - <exports symbol='getColumnNumber'/> - <exports symbol='getEntity'/> - <exports symbol='getLineNumber'/> - <exports symbol='getNamespace'/> - <exports symbol='getParameterEntity'/> - <exports symbol='getPublicId'/> - <exports symbol='getSystemId'/> - <exports symbol='globalNamespace'/> - <exports symbol='hasExternalSubset'/> - <exports symbol='hasInternalSubset'/> - <exports symbol='ignorableWhitespace'/> - <exports symbol='initdocbDefaultSAXHandler'/> - <exports symbol='inithtmlDefaultSAXHandler'/> - <exports symbol='initxmlDefaultSAXHandler'/> - <exports symbol='internalSubset'/> - <exports symbol='isStandalone'/> - <exports symbol='namespaceDecl'/> - <exports symbol='notationDecl'/> - <exports symbol='processingInstruction'/> - <exports symbol='reference'/> - <exports symbol='resolveEntity'/> - <exports symbol='setDocumentLocator'/> - <exports symbol='setNamespace'/> - <exports symbol='startDocument'/> - <exports symbol='startElement'/> - <exports symbol='unparsedEntityDecl'/> - </file> <file name='parserInternals'> <exports symbol='INPUT_CHUNK'/> <exports symbol='IS_BASECHAR'/> @@ -223,6 +124,274 @@ <exports symbol='xmlSwitchInputEncoding'/> <exports symbol='xmlSwitchToEncoding'/> </file> + <file name='xmlschemastypes'> + <exports symbol='xmlSchemaCheckFacet'/> + <exports symbol='xmlSchemaCleanupTypes'/> + <exports symbol='xmlSchemaCompareValues'/> + <exports symbol='xmlSchemaFreeFacet'/> + <exports symbol='xmlSchemaFreeValue'/> + <exports symbol='xmlSchemaGetPredefinedType'/> + <exports symbol='xmlSchemaInitTypes'/> + <exports symbol='xmlSchemaNewFacet'/> + <exports symbol='xmlSchemaValPredefTypeNode'/> + <exports symbol='xmlSchemaValidateFacet'/> + <exports symbol='xmlSchemaValidatePredefinedType'/> + </file> + <file name='xpointer'> + <exports symbol='_xmlLocationSet'/> + <exports symbol='xmlLocationSet'/> + <exports symbol='xmlLocationSetPtr'/> + <exports symbol='xmlXPtrBuildNodeList'/> + <exports symbol='xmlXPtrEval'/> + <exports symbol='xmlXPtrEvalRangePredicate'/> + <exports symbol='xmlXPtrFreeLocationSet'/> + <exports symbol='xmlXPtrLocationSetAdd'/> + <exports symbol='xmlXPtrLocationSetCreate'/> + <exports symbol='xmlXPtrLocationSetDel'/> + <exports symbol='xmlXPtrLocationSetMerge'/> + <exports symbol='xmlXPtrLocationSetRemove'/> + <exports symbol='xmlXPtrNewCollapsedRange'/> + <exports symbol='xmlXPtrNewContext'/> + <exports symbol='xmlXPtrNewLocationSetNodeSet'/> + <exports symbol='xmlXPtrNewLocationSetNodes'/> + <exports symbol='xmlXPtrNewRange'/> + <exports symbol='xmlXPtrNewRangeNodeObject'/> + <exports symbol='xmlXPtrNewRangeNodePoint'/> + <exports symbol='xmlXPtrNewRangeNodes'/> + <exports symbol='xmlXPtrNewRangePointNode'/> + <exports symbol='xmlXPtrNewRangePoints'/> + <exports symbol='xmlXPtrRangeToFunction'/> + <exports symbol='xmlXPtrWrapLocationSet'/> + </file> + <file name='xmlunicode'> + <exports symbol='xmlUCSIsAegeanNumbers'/> + <exports symbol='xmlUCSIsAlphabeticPresentationForms'/> + <exports symbol='xmlUCSIsArabic'/> + <exports symbol='xmlUCSIsArabicPresentationFormsA'/> + <exports symbol='xmlUCSIsArabicPresentationFormsB'/> + <exports symbol='xmlUCSIsArmenian'/> + <exports symbol='xmlUCSIsArrows'/> + <exports symbol='xmlUCSIsBasicLatin'/> + <exports symbol='xmlUCSIsBengali'/> + <exports symbol='xmlUCSIsBlock'/> + <exports symbol='xmlUCSIsBlockElements'/> + <exports symbol='xmlUCSIsBopomofo'/> + <exports symbol='xmlUCSIsBopomofoExtended'/> + <exports symbol='xmlUCSIsBoxDrawing'/> + <exports symbol='xmlUCSIsBraillePatterns'/> + <exports symbol='xmlUCSIsBuhid'/> + <exports symbol='xmlUCSIsByzantineMusicalSymbols'/> + <exports symbol='xmlUCSIsCJKCompatibility'/> + <exports symbol='xmlUCSIsCJKCompatibilityForms'/> + <exports symbol='xmlUCSIsCJKCompatibilityIdeographs'/> + <exports symbol='xmlUCSIsCJKCompatibilityIdeographsSupplement'/> + <exports symbol='xmlUCSIsCJKRadicalsSupplement'/> + <exports symbol='xmlUCSIsCJKSymbolsandPunctuation'/> + <exports symbol='xmlUCSIsCJKUnifiedIdeographs'/> + <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionA'/> + <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionB'/> + <exports symbol='xmlUCSIsCat'/> + <exports symbol='xmlUCSIsCatC'/> + <exports symbol='xmlUCSIsCatCc'/> + <exports symbol='xmlUCSIsCatCf'/> + <exports symbol='xmlUCSIsCatCo'/> + <exports symbol='xmlUCSIsCatCs'/> + <exports symbol='xmlUCSIsCatL'/> + <exports symbol='xmlUCSIsCatLl'/> + <exports symbol='xmlUCSIsCatLm'/> + <exports symbol='xmlUCSIsCatLo'/> + <exports symbol='xmlUCSIsCatLt'/> + <exports symbol='xmlUCSIsCatLu'/> + <exports symbol='xmlUCSIsCatM'/> + <exports symbol='xmlUCSIsCatMc'/> + <exports symbol='xmlUCSIsCatMe'/> + <exports symbol='xmlUCSIsCatMn'/> + <exports symbol='xmlUCSIsCatN'/> + <exports symbol='xmlUCSIsCatNd'/> + <exports symbol='xmlUCSIsCatNl'/> + <exports symbol='xmlUCSIsCatNo'/> + <exports symbol='xmlUCSIsCatP'/> + <exports symbol='xmlUCSIsCatPc'/> + <exports symbol='xmlUCSIsCatPd'/> + <exports symbol='xmlUCSIsCatPe'/> + <exports symbol='xmlUCSIsCatPf'/> + <exports symbol='xmlUCSIsCatPi'/> + <exports symbol='xmlUCSIsCatPo'/> + <exports symbol='xmlUCSIsCatPs'/> + <exports symbol='xmlUCSIsCatS'/> + <exports symbol='xmlUCSIsCatSc'/> + <exports symbol='xmlUCSIsCatSk'/> + <exports symbol='xmlUCSIsCatSm'/> + <exports symbol='xmlUCSIsCatSo'/> + <exports symbol='xmlUCSIsCatZ'/> + <exports symbol='xmlUCSIsCatZl'/> + <exports symbol='xmlUCSIsCatZp'/> + <exports symbol='xmlUCSIsCatZs'/> + <exports symbol='xmlUCSIsCherokee'/> + <exports symbol='xmlUCSIsCombiningDiacriticalMarks'/> + <exports symbol='xmlUCSIsCombiningDiacriticalMarksforSymbols'/> + <exports symbol='xmlUCSIsCombiningHalfMarks'/> + <exports symbol='xmlUCSIsCombiningMarksforSymbols'/> + <exports symbol='xmlUCSIsControlPictures'/> + <exports symbol='xmlUCSIsCurrencySymbols'/> + <exports symbol='xmlUCSIsCypriotSyllabary'/> + <exports symbol='xmlUCSIsCyrillic'/> + <exports symbol='xmlUCSIsCyrillicSupplement'/> + <exports symbol='xmlUCSIsDeseret'/> + <exports symbol='xmlUCSIsDevanagari'/> + <exports symbol='xmlUCSIsDingbats'/> + <exports symbol='xmlUCSIsEnclosedAlphanumerics'/> + <exports symbol='xmlUCSIsEnclosedCJKLettersandMonths'/> + <exports symbol='xmlUCSIsEthiopic'/> + <exports symbol='xmlUCSIsGeneralPunctuation'/> + <exports symbol='xmlUCSIsGeometricShapes'/> + <exports symbol='xmlUCSIsGeorgian'/> + <exports symbol='xmlUCSIsGothic'/> + <exports symbol='xmlUCSIsGreek'/> + <exports symbol='xmlUCSIsGreekExtended'/> + <exports symbol='xmlUCSIsGreekandCoptic'/> + <exports symbol='xmlUCSIsGujarati'/> + <exports symbol='xmlUCSIsGurmukhi'/> + <exports symbol='xmlUCSIsHalfwidthandFullwidthForms'/> + <exports symbol='xmlUCSIsHangulCompatibilityJamo'/> + <exports symbol='xmlUCSIsHangulJamo'/> + <exports symbol='xmlUCSIsHangulSyllables'/> + <exports symbol='xmlUCSIsHanunoo'/> + <exports symbol='xmlUCSIsHebrew'/> + <exports symbol='xmlUCSIsHighPrivateUseSurrogates'/> + <exports symbol='xmlUCSIsHighSurrogates'/> + <exports symbol='xmlUCSIsHiragana'/> + <exports symbol='xmlUCSIsIPAExtensions'/> + <exports symbol='xmlUCSIsIdeographicDescriptionCharacters'/> + <exports symbol='xmlUCSIsKanbun'/> + <exports symbol='xmlUCSIsKangxiRadicals'/> + <exports symbol='xmlUCSIsKannada'/> + <exports symbol='xmlUCSIsKatakana'/> + <exports symbol='xmlUCSIsKatakanaPhoneticExtensions'/> + <exports symbol='xmlUCSIsKhmer'/> + <exports symbol='xmlUCSIsKhmerSymbols'/> + <exports symbol='xmlUCSIsLao'/> + <exports symbol='xmlUCSIsLatin1Supplement'/> + <exports symbol='xmlUCSIsLatinExtendedA'/> + <exports symbol='xmlUCSIsLatinExtendedAdditional'/> + <exports symbol='xmlUCSIsLatinExtendedB'/> + <exports symbol='xmlUCSIsLetterlikeSymbols'/> + <exports symbol='xmlUCSIsLimbu'/> + <exports symbol='xmlUCSIsLinearBIdeograms'/> + <exports symbol='xmlUCSIsLinearBSyllabary'/> + <exports symbol='xmlUCSIsLowSurrogates'/> + <exports symbol='xmlUCSIsMalayalam'/> + <exports symbol='xmlUCSIsMathematicalAlphanumericSymbols'/> + <exports symbol='xmlUCSIsMathematicalOperators'/> + <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsA'/> + <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsB'/> + <exports symbol='xmlUCSIsMiscellaneousSymbols'/> + <exports symbol='xmlUCSIsMiscellaneousSymbolsandArrows'/> + <exports symbol='xmlUCSIsMiscellaneousTechnical'/> + <exports symbol='xmlUCSIsMongolian'/> + <exports symbol='xmlUCSIsMusicalSymbols'/> + <exports symbol='xmlUCSIsMyanmar'/> + <exports symbol='xmlUCSIsNumberForms'/> + <exports symbol='xmlUCSIsOgham'/> + <exports symbol='xmlUCSIsOldItalic'/> + <exports symbol='xmlUCSIsOpticalCharacterRecognition'/> + <exports symbol='xmlUCSIsOriya'/> + <exports symbol='xmlUCSIsOsmanya'/> + <exports symbol='xmlUCSIsPhoneticExtensions'/> + <exports symbol='xmlUCSIsPrivateUse'/> + <exports symbol='xmlUCSIsPrivateUseArea'/> + <exports symbol='xmlUCSIsRunic'/> + <exports symbol='xmlUCSIsShavian'/> + <exports symbol='xmlUCSIsSinhala'/> + <exports symbol='xmlUCSIsSmallFormVariants'/> + <exports symbol='xmlUCSIsSpacingModifierLetters'/> + <exports symbol='xmlUCSIsSpecials'/> + <exports symbol='xmlUCSIsSuperscriptsandSubscripts'/> + <exports symbol='xmlUCSIsSupplementalArrowsA'/> + <exports symbol='xmlUCSIsSupplementalArrowsB'/> + <exports symbol='xmlUCSIsSupplementalMathematicalOperators'/> + <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaA'/> + <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaB'/> + <exports symbol='xmlUCSIsSyriac'/> + <exports symbol='xmlUCSIsTagalog'/> + <exports symbol='xmlUCSIsTagbanwa'/> + <exports symbol='xmlUCSIsTags'/> + <exports symbol='xmlUCSIsTaiLe'/> + <exports symbol='xmlUCSIsTaiXuanJingSymbols'/> + <exports symbol='xmlUCSIsTamil'/> + <exports symbol='xmlUCSIsTelugu'/> + <exports symbol='xmlUCSIsThaana'/> + <exports symbol='xmlUCSIsThai'/> + <exports symbol='xmlUCSIsTibetan'/> + <exports symbol='xmlUCSIsUgaritic'/> + <exports symbol='xmlUCSIsUnifiedCanadianAboriginalSyllabics'/> + <exports symbol='xmlUCSIsVariationSelectors'/> + <exports symbol='xmlUCSIsVariationSelectorsSupplement'/> + <exports symbol='xmlUCSIsYiRadicals'/> + <exports symbol='xmlUCSIsYiSyllables'/> + <exports symbol='xmlUCSIsYijingHexagramSymbols'/> + </file> + <file name='encoding'> + <exports symbol='UTF8Toisolat1'/> + <exports symbol='XML_CHAR_ENCODING_2022_JP'/> + <exports symbol='XML_CHAR_ENCODING_8859_1'/> + <exports symbol='XML_CHAR_ENCODING_8859_2'/> + <exports symbol='XML_CHAR_ENCODING_8859_3'/> + <exports symbol='XML_CHAR_ENCODING_8859_4'/> + <exports symbol='XML_CHAR_ENCODING_8859_5'/> + <exports symbol='XML_CHAR_ENCODING_8859_6'/> + <exports symbol='XML_CHAR_ENCODING_8859_7'/> + <exports symbol='XML_CHAR_ENCODING_8859_8'/> + <exports symbol='XML_CHAR_ENCODING_8859_9'/> + <exports symbol='XML_CHAR_ENCODING_ASCII'/> + <exports symbol='XML_CHAR_ENCODING_EBCDIC'/> + <exports symbol='XML_CHAR_ENCODING_ERROR'/> + <exports symbol='XML_CHAR_ENCODING_EUC_JP'/> + <exports symbol='XML_CHAR_ENCODING_NONE'/> + <exports symbol='XML_CHAR_ENCODING_SHIFT_JIS'/> + <exports symbol='XML_CHAR_ENCODING_UCS2'/> + <exports symbol='XML_CHAR_ENCODING_UCS4BE'/> + <exports symbol='XML_CHAR_ENCODING_UCS4LE'/> + <exports symbol='XML_CHAR_ENCODING_UCS4_2143'/> + <exports symbol='XML_CHAR_ENCODING_UCS4_3412'/> + <exports symbol='XML_CHAR_ENCODING_UTF16BE'/> + <exports symbol='XML_CHAR_ENCODING_UTF16LE'/> + <exports symbol='XML_CHAR_ENCODING_UTF8'/> + <exports symbol='_xmlCharEncodingHandler'/> + <exports symbol='isolat1ToUTF8'/> + <exports symbol='xmlAddEncodingAlias'/> + <exports symbol='xmlCharEncCloseFunc'/> + <exports symbol='xmlCharEncFirstLine'/> + <exports symbol='xmlCharEncInFunc'/> + <exports symbol='xmlCharEncOutFunc'/> + <exports symbol='xmlCharEncoding'/> + <exports symbol='xmlCharEncodingHandler'/> + <exports symbol='xmlCharEncodingHandlerPtr'/> + <exports symbol='xmlCharEncodingInputFunc'/> + <exports symbol='xmlCharEncodingOutputFunc'/> + <exports symbol='xmlCheckUTF8'/> + <exports symbol='xmlCleanupCharEncodingHandlers'/> + <exports symbol='xmlCleanupEncodingAliases'/> + <exports symbol='xmlDelEncodingAlias'/> + <exports symbol='xmlDetectCharEncoding'/> + <exports symbol='xmlFindCharEncodingHandler'/> + <exports symbol='xmlGetCharEncodingHandler'/> + <exports symbol='xmlGetCharEncodingName'/> + <exports symbol='xmlGetEncodingAlias'/> + <exports symbol='xmlGetUTF8Char'/> + <exports symbol='xmlInitCharEncodingHandlers'/> + <exports symbol='xmlNewCharEncodingHandler'/> + <exports symbol='xmlParseCharEncoding'/> + <exports symbol='xmlRegisterCharEncodingHandler'/> + <exports symbol='xmlUTF8Charcmp'/> + <exports symbol='xmlUTF8Size'/> + <exports symbol='xmlUTF8Strlen'/> + <exports symbol='xmlUTF8Strloc'/> + <exports symbol='xmlUTF8Strndup'/> + <exports symbol='xmlUTF8Strpos'/> + <exports symbol='xmlUTF8Strsize'/> + <exports symbol='xmlUTF8Strsub'/> + </file> <file name='c14n'> <exports symbol='xmlC14NDocDumpMemory'/> <exports symbol='xmlC14NDocSave'/> @@ -431,46 +600,40 @@ <exports symbol='xmlXPathWrapString'/> <exports symbol='xmlXPatherror'/> </file> - <file name='chvalid'> - <exports symbol='_xmlChLRange'/> - <exports symbol='_xmlChRangeGroup'/> - <exports symbol='_xmlChSRange'/> - <exports symbol='xmlChLRange'/> - <exports symbol='xmlChLRangePtr'/> - <exports symbol='xmlChRangeGroup'/> - <exports symbol='xmlChRangeGroupPtr'/> - <exports symbol='xmlChSRange'/> - <exports symbol='xmlChSRangePtr'/> - <exports symbol='xmlCharInRange'/> - <exports symbol='xmlIsBaseChar'/> - <exports symbol='xmlIsBaseCharGroup'/> - <exports symbol='xmlIsBaseCharQ'/> - <exports symbol='xmlIsBaseChar_ch'/> - <exports symbol='xmlIsBlank'/> - <exports symbol='xmlIsBlankQ'/> - <exports symbol='xmlIsBlank_ch'/> - <exports symbol='xmlIsChar'/> - <exports symbol='xmlIsCharGroup'/> - <exports symbol='xmlIsCharQ'/> - <exports symbol='xmlIsChar_ch'/> - <exports symbol='xmlIsCombining'/> - <exports symbol='xmlIsCombiningGroup'/> - <exports symbol='xmlIsCombiningQ'/> - <exports symbol='xmlIsDigit'/> - <exports symbol='xmlIsDigitGroup'/> - <exports symbol='xmlIsDigitQ'/> - <exports symbol='xmlIsDigit_ch'/> - <exports symbol='xmlIsExtender'/> - <exports symbol='xmlIsExtenderGroup'/> - <exports symbol='xmlIsExtenderQ'/> - <exports symbol='xmlIsExtender_ch'/> - <exports symbol='xmlIsIdeographic'/> - <exports symbol='xmlIsIdeographicGroup'/> - <exports symbol='xmlIsIdeographicQ'/> - <exports symbol='xmlIsPubidChar'/> - <exports symbol='xmlIsPubidCharQ'/> - <exports symbol='xmlIsPubidChar_ch'/> - <exports symbol='xmlIsPubidChar_tab'/> + <file name='list'> + <exports symbol='xmlLink'/> + <exports symbol='xmlLinkGetData'/> + <exports symbol='xmlLinkPtr'/> + <exports symbol='xmlList'/> + <exports symbol='xmlListAppend'/> + <exports symbol='xmlListClear'/> + <exports symbol='xmlListCopy'/> + <exports symbol='xmlListCreate'/> + <exports symbol='xmlListDataCompare'/> + <exports symbol='xmlListDeallocator'/> + <exports symbol='xmlListDelete'/> + <exports symbol='xmlListDup'/> + <exports symbol='xmlListEmpty'/> + <exports symbol='xmlListEnd'/> + <exports symbol='xmlListFront'/> + <exports symbol='xmlListInsert'/> + <exports symbol='xmlListMerge'/> + <exports symbol='xmlListPopBack'/> + <exports symbol='xmlListPopFront'/> + <exports symbol='xmlListPtr'/> + <exports symbol='xmlListPushBack'/> + <exports symbol='xmlListPushFront'/> + <exports symbol='xmlListRemoveAll'/> + <exports symbol='xmlListRemoveFirst'/> + <exports symbol='xmlListRemoveLast'/> + <exports symbol='xmlListReverse'/> + <exports symbol='xmlListReverseSearch'/> + <exports symbol='xmlListReverseWalk'/> + <exports symbol='xmlListSearch'/> + <exports symbol='xmlListSize'/> + <exports symbol='xmlListSort'/> + <exports symbol='xmlListWalk'/> + <exports symbol='xmlListWalker'/> </file> <file name='xmlautomata'> <exports symbol='xmlAutomata'/> @@ -544,18 +707,46 @@ <exports symbol='xmlNanoFTPScanProxy'/> <exports symbol='xmlNanoFTPUpdateURL'/> </file> - <file name='xmlschemastypes'> - <exports symbol='xmlSchemaCheckFacet'/> - <exports symbol='xmlSchemaCleanupTypes'/> - <exports symbol='xmlSchemaCompareValues'/> - <exports symbol='xmlSchemaFreeFacet'/> - <exports symbol='xmlSchemaFreeValue'/> - <exports symbol='xmlSchemaGetPredefinedType'/> - <exports symbol='xmlSchemaInitTypes'/> - <exports symbol='xmlSchemaNewFacet'/> - <exports symbol='xmlSchemaValPredefTypeNode'/> - <exports symbol='xmlSchemaValidateFacet'/> - <exports symbol='xmlSchemaValidatePredefinedType'/> + <file name='chvalid'> + <exports symbol='_xmlChLRange'/> + <exports symbol='_xmlChRangeGroup'/> + <exports symbol='_xmlChSRange'/> + <exports symbol='xmlChLRange'/> + <exports symbol='xmlChLRangePtr'/> + <exports symbol='xmlChRangeGroup'/> + <exports symbol='xmlChRangeGroupPtr'/> + <exports symbol='xmlChSRange'/> + <exports symbol='xmlChSRangePtr'/> + <exports symbol='xmlCharInRange'/> + <exports symbol='xmlIsBaseChar'/> + <exports symbol='xmlIsBaseCharGroup'/> + <exports symbol='xmlIsBaseCharQ'/> + <exports symbol='xmlIsBaseChar_ch'/> + <exports symbol='xmlIsBlank'/> + <exports symbol='xmlIsBlankQ'/> + <exports symbol='xmlIsBlank_ch'/> + <exports symbol='xmlIsChar'/> + <exports symbol='xmlIsCharGroup'/> + <exports symbol='xmlIsCharQ'/> + <exports symbol='xmlIsChar_ch'/> + <exports symbol='xmlIsCombining'/> + <exports symbol='xmlIsCombiningGroup'/> + <exports symbol='xmlIsCombiningQ'/> + <exports symbol='xmlIsDigit'/> + <exports symbol='xmlIsDigitGroup'/> + <exports symbol='xmlIsDigitQ'/> + <exports symbol='xmlIsDigit_ch'/> + <exports symbol='xmlIsExtender'/> + <exports symbol='xmlIsExtenderGroup'/> + <exports symbol='xmlIsExtenderQ'/> + <exports symbol='xmlIsExtender_ch'/> + <exports symbol='xmlIsIdeographic'/> + <exports symbol='xmlIsIdeographicGroup'/> + <exports symbol='xmlIsIdeographicQ'/> + <exports symbol='xmlIsPubidChar'/> + <exports symbol='xmlIsPubidCharQ'/> + <exports symbol='xmlIsPubidChar_ch'/> + <exports symbol='xmlIsPubidChar_tab'/> </file> <file name='DOCBparser'> <exports symbol='docbCreateFileParserCtxt'/> @@ -683,6 +874,40 @@ <exports symbol='xmlXPathVariable'/> <exports symbol='xmlXPathVariablePtr'/> </file> + <file name='debugXML'> + <exports symbol='_xmlShellCtxt'/> + <exports symbol='xmlBoolToText'/> + <exports symbol='xmlDebugDumpAttr'/> + <exports symbol='xmlDebugDumpAttrList'/> + <exports symbol='xmlDebugDumpDTD'/> + <exports symbol='xmlDebugDumpDocument'/> + <exports symbol='xmlDebugDumpDocumentHead'/> + <exports symbol='xmlDebugDumpEntities'/> + <exports symbol='xmlDebugDumpNode'/> + <exports symbol='xmlDebugDumpNodeList'/> + <exports symbol='xmlDebugDumpOneNode'/> + <exports symbol='xmlDebugDumpString'/> + <exports symbol='xmlLsCountNode'/> + <exports symbol='xmlLsOneNode'/> + <exports symbol='xmlShell'/> + <exports symbol='xmlShellBase'/> + <exports symbol='xmlShellCat'/> + <exports symbol='xmlShellCmd'/> + <exports symbol='xmlShellCtxt'/> + <exports symbol='xmlShellCtxtPtr'/> + <exports symbol='xmlShellDir'/> + <exports symbol='xmlShellDu'/> + <exports symbol='xmlShellList'/> + <exports symbol='xmlShellLoad'/> + <exports symbol='xmlShellPrintNode'/> + <exports symbol='xmlShellPrintXPathError'/> + <exports symbol='xmlShellPrintXPathResult'/> + <exports symbol='xmlShellPwd'/> + <exports symbol='xmlShellReadlineFunc'/> + <exports symbol='xmlShellSave'/> + <exports symbol='xmlShellValidate'/> + <exports symbol='xmlShellWrite'/> + </file> <file name='xlink'> <exports symbol='XLINK_ACTUATE_AUTO'/> <exports symbol='XLINK_ACTUATE_NONE'/> @@ -714,6 +939,56 @@ <exports symbol='xlinkTitle'/> <exports symbol='xlinkType'/> </file> + <file name='xmlschemas'> + <exports symbol='XML_SCHEMAS_ERR_'/> + <exports symbol='XML_SCHEMAS_ERR_ATTRINVALID'/> + <exports symbol='XML_SCHEMAS_ERR_ATTRUNKNOWN'/> + <exports symbol='XML_SCHEMAS_ERR_CONSTRUCT'/> + <exports symbol='XML_SCHEMAS_ERR_ELEMCONT'/> + <exports symbol='XML_SCHEMAS_ERR_EXTRACONTENT'/> + <exports symbol='XML_SCHEMAS_ERR_FACET'/> + <exports symbol='XML_SCHEMAS_ERR_HAVEDEFAULT'/> + <exports symbol='XML_SCHEMAS_ERR_INTERNAL'/> + <exports symbol='XML_SCHEMAS_ERR_INVALIDATTR'/> + <exports symbol='XML_SCHEMAS_ERR_INVALIDELEM'/> + <exports symbol='XML_SCHEMAS_ERR_ISABSTRACT'/> + <exports symbol='XML_SCHEMAS_ERR_MISSING'/> + <exports symbol='XML_SCHEMAS_ERR_NOROLLBACK'/> + <exports symbol='XML_SCHEMAS_ERR_NOROOT'/> + <exports symbol='XML_SCHEMAS_ERR_NOTDETERMINIST'/> + <exports symbol='XML_SCHEMAS_ERR_NOTEMPTY'/> + <exports symbol='XML_SCHEMAS_ERR_NOTNILLABLE'/> + <exports symbol='XML_SCHEMAS_ERR_NOTSIMPLE'/> + <exports symbol='XML_SCHEMAS_ERR_NOTTOPLEVEL'/> + <exports symbol='XML_SCHEMAS_ERR_NOTYPE'/> + <exports symbol='XML_SCHEMAS_ERR_OK'/> + <exports symbol='XML_SCHEMAS_ERR_UNDECLAREDELEM'/> + <exports symbol='XML_SCHEMAS_ERR_VALUE'/> + <exports symbol='XML_SCHEMAS_ERR_WRONGELEM'/> + <exports symbol='XML_SCHEMAS_ERR_XXX'/> + <exports symbol='xmlSchema'/> + <exports symbol='xmlSchemaDump'/> + <exports symbol='xmlSchemaFree'/> + <exports symbol='xmlSchemaFreeParserCtxt'/> + <exports symbol='xmlSchemaFreeValidCtxt'/> + <exports symbol='xmlSchemaNewDocParserCtxt'/> + <exports symbol='xmlSchemaNewMemParserCtxt'/> + <exports symbol='xmlSchemaNewParserCtxt'/> + <exports symbol='xmlSchemaNewValidCtxt'/> + <exports symbol='xmlSchemaParse'/> + <exports symbol='xmlSchemaParserCtxt'/> + <exports symbol='xmlSchemaParserCtxtPtr'/> + <exports symbol='xmlSchemaPtr'/> + <exports symbol='xmlSchemaSetParserErrors'/> + <exports symbol='xmlSchemaSetValidErrors'/> + <exports symbol='xmlSchemaValidCtxt'/> + <exports symbol='xmlSchemaValidCtxtPtr'/> + <exports symbol='xmlSchemaValidError'/> + <exports symbol='xmlSchemaValidateDoc'/> + <exports symbol='xmlSchemaValidateStream'/> + <exports symbol='xmlSchemaValidityErrorFunc'/> + <exports symbol='xmlSchemaValidityWarningFunc'/> + </file> <file name='entities'> <exports symbol='XML_EXTERNAL_GENERAL_PARSED_ENTITY'/> <exports symbol='XML_EXTERNAL_GENERAL_UNPARSED_ENTITY'/> @@ -804,41 +1079,6 @@ <exports symbol='xmlSAXDefaultVersion'/> <exports symbol='xmlSAXVersion'/> </file> - <file name='list'> - <exports symbol='xmlLink'/> - <exports symbol='xmlLinkGetData'/> - <exports symbol='xmlLinkPtr'/> - <exports symbol='xmlList'/> - <exports symbol='xmlListAppend'/> - <exports symbol='xmlListClear'/> - <exports symbol='xmlListCopy'/> - <exports symbol='xmlListCreate'/> - <exports symbol='xmlListDataCompare'/> - <exports symbol='xmlListDeallocator'/> - <exports symbol='xmlListDelete'/> - <exports symbol='xmlListDup'/> - <exports symbol='xmlListEmpty'/> - <exports symbol='xmlListEnd'/> - <exports symbol='xmlListFront'/> - <exports symbol='xmlListInsert'/> - <exports symbol='xmlListMerge'/> - <exports symbol='xmlListPopBack'/> - <exports symbol='xmlListPopFront'/> - <exports symbol='xmlListPtr'/> - <exports symbol='xmlListPushBack'/> - <exports symbol='xmlListPushFront'/> - <exports symbol='xmlListRemoveAll'/> - <exports symbol='xmlListRemoveFirst'/> - <exports symbol='xmlListRemoveLast'/> - <exports symbol='xmlListReverse'/> - <exports symbol='xmlListReverseSearch'/> - <exports symbol='xmlListReverseWalk'/> - <exports symbol='xmlListSearch'/> - <exports symbol='xmlListSize'/> - <exports symbol='xmlListSort'/> - <exports symbol='xmlListWalk'/> - <exports symbol='xmlListWalker'/> - </file> <file name='xmlmemory'> <exports symbol='DEBUG_MEMORY'/> <exports symbol='xmlFreeFunc'/> @@ -1481,145 +1721,6 @@ <exports symbol='xmlTextReaderValue'/> <exports symbol='xmlTextReaderXmlLang'/> </file> - <file name='xmlschemas'> - <exports symbol='XML_SCHEMAS_ERR_'/> - <exports symbol='XML_SCHEMAS_ERR_ATTRINVALID'/> - <exports symbol='XML_SCHEMAS_ERR_ATTRUNKNOWN'/> - <exports symbol='XML_SCHEMAS_ERR_CONSTRUCT'/> - <exports symbol='XML_SCHEMAS_ERR_ELEMCONT'/> - <exports symbol='XML_SCHEMAS_ERR_EXTRACONTENT'/> - <exports symbol='XML_SCHEMAS_ERR_FACET'/> - <exports symbol='XML_SCHEMAS_ERR_HAVEDEFAULT'/> - <exports symbol='XML_SCHEMAS_ERR_INTERNAL'/> - <exports symbol='XML_SCHEMAS_ERR_INVALIDATTR'/> - <exports symbol='XML_SCHEMAS_ERR_INVALIDELEM'/> - <exports symbol='XML_SCHEMAS_ERR_ISABSTRACT'/> - <exports symbol='XML_SCHEMAS_ERR_MISSING'/> - <exports symbol='XML_SCHEMAS_ERR_NOROLLBACK'/> - <exports symbol='XML_SCHEMAS_ERR_NOROOT'/> - <exports symbol='XML_SCHEMAS_ERR_NOTDETERMINIST'/> - <exports symbol='XML_SCHEMAS_ERR_NOTEMPTY'/> - <exports symbol='XML_SCHEMAS_ERR_NOTNILLABLE'/> - <exports symbol='XML_SCHEMAS_ERR_NOTSIMPLE'/> - <exports symbol='XML_SCHEMAS_ERR_NOTTOPLEVEL'/> - <exports symbol='XML_SCHEMAS_ERR_NOTYPE'/> - <exports symbol='XML_SCHEMAS_ERR_OK'/> - <exports symbol='XML_SCHEMAS_ERR_UNDECLAREDELEM'/> - <exports symbol='XML_SCHEMAS_ERR_VALUE'/> - <exports symbol='XML_SCHEMAS_ERR_WRONGELEM'/> - <exports symbol='XML_SCHEMAS_ERR_XXX'/> - <exports symbol='xmlSchema'/> - <exports symbol='xmlSchemaDump'/> - <exports symbol='xmlSchemaFree'/> - <exports symbol='xmlSchemaFreeParserCtxt'/> - <exports symbol='xmlSchemaFreeValidCtxt'/> - <exports symbol='xmlSchemaNewDocParserCtxt'/> - <exports symbol='xmlSchemaNewMemParserCtxt'/> - <exports symbol='xmlSchemaNewParserCtxt'/> - <exports symbol='xmlSchemaNewValidCtxt'/> - <exports symbol='xmlSchemaParse'/> - <exports symbol='xmlSchemaParserCtxt'/> - <exports symbol='xmlSchemaParserCtxtPtr'/> - <exports symbol='xmlSchemaPtr'/> - <exports symbol='xmlSchemaSetParserErrors'/> - <exports symbol='xmlSchemaSetValidErrors'/> - <exports symbol='xmlSchemaValidCtxt'/> - <exports symbol='xmlSchemaValidCtxtPtr'/> - <exports symbol='xmlSchemaValidError'/> - <exports symbol='xmlSchemaValidateDoc'/> - <exports symbol='xmlSchemaValidateStream'/> - <exports symbol='xmlSchemaValidityErrorFunc'/> - <exports symbol='xmlSchemaValidityWarningFunc'/> - </file> - <file name='relaxng'> - <exports symbol='XML_RELAXNG_ERR_ATTREXTRANS'/> - <exports symbol='XML_RELAXNG_ERR_ATTRNAME'/> - <exports symbol='XML_RELAXNG_ERR_ATTRNONS'/> - <exports symbol='XML_RELAXNG_ERR_ATTRVALID'/> - <exports symbol='XML_RELAXNG_ERR_ATTRWRONGNS'/> - <exports symbol='XML_RELAXNG_ERR_CONTENTVALID'/> - <exports symbol='XML_RELAXNG_ERR_DATAELEM'/> - <exports symbol='XML_RELAXNG_ERR_DATATYPE'/> - <exports symbol='XML_RELAXNG_ERR_DUPID'/> - <exports symbol='XML_RELAXNG_ERR_ELEMEXTRANS'/> - <exports symbol='XML_RELAXNG_ERR_ELEMNAME'/> - <exports symbol='XML_RELAXNG_ERR_ELEMNONS'/> - <exports symbol='XML_RELAXNG_ERR_ELEMNOTEMPTY'/> - <exports symbol='XML_RELAXNG_ERR_ELEMWRONG'/> - <exports symbol='XML_RELAXNG_ERR_ELEMWRONGNS'/> - <exports symbol='XML_RELAXNG_ERR_EXTRACONTENT'/> - <exports symbol='XML_RELAXNG_ERR_EXTRADATA'/> - <exports symbol='XML_RELAXNG_ERR_INTEREXTRA'/> - <exports symbol='XML_RELAXNG_ERR_INTERNAL'/> - <exports symbol='XML_RELAXNG_ERR_INTERNODATA'/> - <exports symbol='XML_RELAXNG_ERR_INTERSEQ'/> - <exports symbol='XML_RELAXNG_ERR_INVALIDATTR'/> - <exports symbol='XML_RELAXNG_ERR_LACKDATA'/> - <exports symbol='XML_RELAXNG_ERR_LIST'/> - <exports symbol='XML_RELAXNG_ERR_LISTELEM'/> - <exports symbol='XML_RELAXNG_ERR_LISTEMPTY'/> - <exports symbol='XML_RELAXNG_ERR_LISTEXTRA'/> - <exports symbol='XML_RELAXNG_ERR_MEMORY'/> - <exports symbol='XML_RELAXNG_ERR_NODEFINE'/> - <exports symbol='XML_RELAXNG_ERR_NOELEM'/> - <exports symbol='XML_RELAXNG_ERR_NOGRAMMAR'/> - <exports symbol='XML_RELAXNG_ERR_NOSTATE'/> - <exports symbol='XML_RELAXNG_ERR_NOTELEM'/> - <exports symbol='XML_RELAXNG_ERR_TEXTWRONG'/> - <exports symbol='XML_RELAXNG_ERR_TYPE'/> - <exports symbol='XML_RELAXNG_ERR_TYPECMP'/> - <exports symbol='XML_RELAXNG_ERR_TYPEVAL'/> - <exports symbol='XML_RELAXNG_ERR_VALELEM'/> - <exports symbol='XML_RELAXNG_ERR_VALUE'/> - <exports symbol='XML_RELAXNG_OK'/> - <exports symbol='xmlRelaxNG'/> - <exports symbol='xmlRelaxNGCleanupTypes'/> - <exports symbol='xmlRelaxNGDump'/> - <exports symbol='xmlRelaxNGDumpTree'/> - <exports symbol='xmlRelaxNGFree'/> - <exports symbol='xmlRelaxNGFreeParserCtxt'/> - <exports symbol='xmlRelaxNGFreeValidCtxt'/> - <exports symbol='xmlRelaxNGGetParserErrors'/> - <exports symbol='xmlRelaxNGGetValidErrors'/> - <exports symbol='xmlRelaxNGNewDocParserCtxt'/> - <exports symbol='xmlRelaxNGNewMemParserCtxt'/> - <exports symbol='xmlRelaxNGNewParserCtxt'/> - <exports symbol='xmlRelaxNGNewValidCtxt'/> - <exports symbol='xmlRelaxNGParse'/> - <exports symbol='xmlRelaxNGParserCtxt'/> - <exports symbol='xmlRelaxNGParserCtxtPtr'/> - <exports symbol='xmlRelaxNGPtr'/> - <exports symbol='xmlRelaxNGSetParserErrors'/> - <exports symbol='xmlRelaxNGSetValidErrors'/> - <exports symbol='xmlRelaxNGValidCtxt'/> - <exports symbol='xmlRelaxNGValidCtxtPtr'/> - <exports symbol='xmlRelaxNGValidErr'/> - <exports symbol='xmlRelaxNGValidateDoc'/> - <exports symbol='xmlRelaxNGValidateFullElement'/> - <exports symbol='xmlRelaxNGValidatePopElement'/> - <exports symbol='xmlRelaxNGValidatePushCData'/> - <exports symbol='xmlRelaxNGValidatePushElement'/> - <exports symbol='xmlRelaxNGValidityErrorFunc'/> - <exports symbol='xmlRelaxNGValidityWarningFunc'/> - </file> - <file name='dict'> - <exports symbol='xmlDict'/> - <exports symbol='xmlDictCreate'/> - <exports symbol='xmlDictFree'/> - <exports symbol='xmlDictLookup'/> - <exports symbol='xmlDictOwns'/> - <exports symbol='xmlDictPtr'/> - <exports symbol='xmlDictQLookup'/> - <exports symbol='xmlDictReference'/> - <exports symbol='xmlDictSize'/> - </file> - <file name='xmlexports'> - <exports symbol='LIBXML_DLL_IMPORT'/> - <exports symbol='XMLCALL'/> - <exports symbol='XMLPUBFUN'/> - <exports symbol='XMLPUBVAR'/> - <exports symbol='_REENTRANT'/> - </file> <file name='globals'> <exports symbol='_xmlGlobalState'/> <exports symbol='docbDefaultSAXHandler'/> @@ -1709,6 +1810,63 @@ <exports symbol='xmlTreeIndentString'/> <exports symbol='xmlTreeIndentString'/> </file> + <file name='dict'> + <exports symbol='xmlDict'/> + <exports symbol='xmlDictCreate'/> + <exports symbol='xmlDictFree'/> + <exports symbol='xmlDictLookup'/> + <exports symbol='xmlDictOwns'/> + <exports symbol='xmlDictPtr'/> + <exports symbol='xmlDictQLookup'/> + <exports symbol='xmlDictReference'/> + <exports symbol='xmlDictSize'/> + </file> + <file name='xmlexports'> + <exports symbol='LIBXML_DLL_IMPORT'/> + <exports symbol='XMLCALL'/> + <exports symbol='XMLPUBFUN'/> + <exports symbol='XMLPUBVAR'/> + <exports symbol='_REENTRANT'/> + </file> + <file name='SAX'> + <exports symbol='attribute'/> + <exports symbol='attributeDecl'/> + <exports symbol='cdataBlock'/> + <exports symbol='characters'/> + <exports symbol='checkNamespace'/> + <exports symbol='comment'/> + <exports symbol='elementDecl'/> + <exports symbol='endDocument'/> + <exports symbol='endElement'/> + <exports symbol='entityDecl'/> + <exports symbol='externalSubset'/> + <exports symbol='getColumnNumber'/> + <exports symbol='getEntity'/> + <exports symbol='getLineNumber'/> + <exports symbol='getNamespace'/> + <exports symbol='getParameterEntity'/> + <exports symbol='getPublicId'/> + <exports symbol='getSystemId'/> + <exports symbol='globalNamespace'/> + <exports symbol='hasExternalSubset'/> + <exports symbol='hasInternalSubset'/> + <exports symbol='ignorableWhitespace'/> + <exports symbol='initdocbDefaultSAXHandler'/> + <exports symbol='inithtmlDefaultSAXHandler'/> + <exports symbol='initxmlDefaultSAXHandler'/> + <exports symbol='internalSubset'/> + <exports symbol='isStandalone'/> + <exports symbol='namespaceDecl'/> + <exports symbol='notationDecl'/> + <exports symbol='processingInstruction'/> + <exports symbol='reference'/> + <exports symbol='resolveEntity'/> + <exports symbol='setDocumentLocator'/> + <exports symbol='setNamespace'/> + <exports symbol='startDocument'/> + <exports symbol='startElement'/> + <exports symbol='unparsedEntityDecl'/> + </file> <file name='xmlwriter'> <exports symbol='xmlFreeTextWriter'/> <exports symbol='xmlNewTextWriter'/> @@ -2655,159 +2813,76 @@ <exports symbol='xmlRegexpPrint'/> <exports symbol='xmlRegexpPtr'/> </file> - <file name='nanohttp'> - <exports symbol='xmlNanoHTTPAuthHeader'/> - <exports symbol='xmlNanoHTTPCleanup'/> - <exports symbol='xmlNanoHTTPClose'/> - <exports symbol='xmlNanoHTTPEncoding'/> - <exports symbol='xmlNanoHTTPFetch'/> - <exports symbol='xmlNanoHTTPInit'/> - <exports symbol='xmlNanoHTTPMethod'/> - <exports symbol='xmlNanoHTTPMethodRedir'/> - <exports symbol='xmlNanoHTTPMimeType'/> - <exports symbol='xmlNanoHTTPOpen'/> - <exports symbol='xmlNanoHTTPOpenRedir'/> - <exports symbol='xmlNanoHTTPRead'/> - <exports symbol='xmlNanoHTTPRedir'/> - <exports symbol='xmlNanoHTTPReturnCode'/> - <exports symbol='xmlNanoHTTPSave'/> - <exports symbol='xmlNanoHTTPScanProxy'/> - </file> - <file name='xmlunicode'> - <exports symbol='xmlUCSIsAlphabeticPresentationForms'/> - <exports symbol='xmlUCSIsArabic'/> - <exports symbol='xmlUCSIsArabicPresentationFormsA'/> - <exports symbol='xmlUCSIsArabicPresentationFormsB'/> - <exports symbol='xmlUCSIsArmenian'/> - <exports symbol='xmlUCSIsArrows'/> - <exports symbol='xmlUCSIsBasicLatin'/> - <exports symbol='xmlUCSIsBengali'/> - <exports symbol='xmlUCSIsBlock'/> - <exports symbol='xmlUCSIsBlockElements'/> - <exports symbol='xmlUCSIsBopomofo'/> - <exports symbol='xmlUCSIsBopomofoExtended'/> - <exports symbol='xmlUCSIsBoxDrawing'/> - <exports symbol='xmlUCSIsBraillePatterns'/> - <exports symbol='xmlUCSIsByzantineMusicalSymbols'/> - <exports symbol='xmlUCSIsCJKCompatibility'/> - <exports symbol='xmlUCSIsCJKCompatibilityForms'/> - <exports symbol='xmlUCSIsCJKCompatibilityIdeographs'/> - <exports symbol='xmlUCSIsCJKCompatibilityIdeographsSupplement'/> - <exports symbol='xmlUCSIsCJKRadicalsSupplement'/> - <exports symbol='xmlUCSIsCJKSymbolsandPunctuation'/> - <exports symbol='xmlUCSIsCJKUnifiedIdeographs'/> - <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionA'/> - <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionB'/> - <exports symbol='xmlUCSIsCat'/> - <exports symbol='xmlUCSIsCatC'/> - <exports symbol='xmlUCSIsCatCc'/> - <exports symbol='xmlUCSIsCatCf'/> - <exports symbol='xmlUCSIsCatCo'/> - <exports symbol='xmlUCSIsCatCs'/> - <exports symbol='xmlUCSIsCatL'/> - <exports symbol='xmlUCSIsCatLl'/> - <exports symbol='xmlUCSIsCatLm'/> - <exports symbol='xmlUCSIsCatLo'/> - <exports symbol='xmlUCSIsCatLt'/> - <exports symbol='xmlUCSIsCatLu'/> - <exports symbol='xmlUCSIsCatM'/> - <exports symbol='xmlUCSIsCatMc'/> - <exports symbol='xmlUCSIsCatMe'/> - <exports symbol='xmlUCSIsCatMn'/> - <exports symbol='xmlUCSIsCatN'/> - <exports symbol='xmlUCSIsCatNd'/> - <exports symbol='xmlUCSIsCatNl'/> - <exports symbol='xmlUCSIsCatNo'/> - <exports symbol='xmlUCSIsCatP'/> - <exports symbol='xmlUCSIsCatPc'/> - <exports symbol='xmlUCSIsCatPd'/> - <exports symbol='xmlUCSIsCatPe'/> - <exports symbol='xmlUCSIsCatPf'/> - <exports symbol='xmlUCSIsCatPi'/> - <exports symbol='xmlUCSIsCatPo'/> - <exports symbol='xmlUCSIsCatPs'/> - <exports symbol='xmlUCSIsCatS'/> - <exports symbol='xmlUCSIsCatSc'/> - <exports symbol='xmlUCSIsCatSk'/> - <exports symbol='xmlUCSIsCatSm'/> - <exports symbol='xmlUCSIsCatSo'/> - <exports symbol='xmlUCSIsCatZ'/> - <exports symbol='xmlUCSIsCatZl'/> - <exports symbol='xmlUCSIsCatZp'/> - <exports symbol='xmlUCSIsCatZs'/> - <exports symbol='xmlUCSIsCherokee'/> - <exports symbol='xmlUCSIsCombiningDiacriticalMarks'/> - <exports symbol='xmlUCSIsCombiningHalfMarks'/> - <exports symbol='xmlUCSIsCombiningMarksforSymbols'/> - <exports symbol='xmlUCSIsControlPictures'/> - <exports symbol='xmlUCSIsCurrencySymbols'/> - <exports symbol='xmlUCSIsCyrillic'/> - <exports symbol='xmlUCSIsDeseret'/> - <exports symbol='xmlUCSIsDevanagari'/> - <exports symbol='xmlUCSIsDingbats'/> - <exports symbol='xmlUCSIsEnclosedAlphanumerics'/> - <exports symbol='xmlUCSIsEnclosedCJKLettersandMonths'/> - <exports symbol='xmlUCSIsEthiopic'/> - <exports symbol='xmlUCSIsGeneralPunctuation'/> - <exports symbol='xmlUCSIsGeometricShapes'/> - <exports symbol='xmlUCSIsGeorgian'/> - <exports symbol='xmlUCSIsGothic'/> - <exports symbol='xmlUCSIsGreek'/> - <exports symbol='xmlUCSIsGreekExtended'/> - <exports symbol='xmlUCSIsGujarati'/> - <exports symbol='xmlUCSIsGurmukhi'/> - <exports symbol='xmlUCSIsHalfwidthandFullwidthForms'/> - <exports symbol='xmlUCSIsHangulCompatibilityJamo'/> - <exports symbol='xmlUCSIsHangulJamo'/> - <exports symbol='xmlUCSIsHangulSyllables'/> - <exports symbol='xmlUCSIsHebrew'/> - <exports symbol='xmlUCSIsHighPrivateUseSurrogates'/> - <exports symbol='xmlUCSIsHighSurrogates'/> - <exports symbol='xmlUCSIsHiragana'/> - <exports symbol='xmlUCSIsIPAExtensions'/> - <exports symbol='xmlUCSIsIdeographicDescriptionCharacters'/> - <exports symbol='xmlUCSIsKanbun'/> - <exports symbol='xmlUCSIsKangxiRadicals'/> - <exports symbol='xmlUCSIsKannada'/> - <exports symbol='xmlUCSIsKatakana'/> - <exports symbol='xmlUCSIsKhmer'/> - <exports symbol='xmlUCSIsLao'/> - <exports symbol='xmlUCSIsLatin1Supplement'/> - <exports symbol='xmlUCSIsLatinExtendedA'/> - <exports symbol='xmlUCSIsLatinExtendedAdditional'/> - <exports symbol='xmlUCSIsLatinExtendedB'/> - <exports symbol='xmlUCSIsLetterlikeSymbols'/> - <exports symbol='xmlUCSIsLowSurrogates'/> - <exports symbol='xmlUCSIsMalayalam'/> - <exports symbol='xmlUCSIsMathematicalAlphanumericSymbols'/> - <exports symbol='xmlUCSIsMathematicalOperators'/> - <exports symbol='xmlUCSIsMiscellaneousSymbols'/> - <exports symbol='xmlUCSIsMiscellaneousTechnical'/> - <exports symbol='xmlUCSIsMongolian'/> - <exports symbol='xmlUCSIsMusicalSymbols'/> - <exports symbol='xmlUCSIsMyanmar'/> - <exports symbol='xmlUCSIsNumberForms'/> - <exports symbol='xmlUCSIsOgham'/> - <exports symbol='xmlUCSIsOldItalic'/> - <exports symbol='xmlUCSIsOpticalCharacterRecognition'/> - <exports symbol='xmlUCSIsOriya'/> - <exports symbol='xmlUCSIsPrivateUse'/> - <exports symbol='xmlUCSIsRunic'/> - <exports symbol='xmlUCSIsSinhala'/> - <exports symbol='xmlUCSIsSmallFormVariants'/> - <exports symbol='xmlUCSIsSpacingModifierLetters'/> - <exports symbol='xmlUCSIsSpecials'/> - <exports symbol='xmlUCSIsSuperscriptsandSubscripts'/> - <exports symbol='xmlUCSIsSyriac'/> - <exports symbol='xmlUCSIsTags'/> - <exports symbol='xmlUCSIsTamil'/> - <exports symbol='xmlUCSIsTelugu'/> - <exports symbol='xmlUCSIsThaana'/> - <exports symbol='xmlUCSIsThai'/> - <exports symbol='xmlUCSIsTibetan'/> - <exports symbol='xmlUCSIsUnifiedCanadianAboriginalSyllabics'/> - <exports symbol='xmlUCSIsYiRadicals'/> - <exports symbol='xmlUCSIsYiSyllables'/> + <file name='relaxng'> + <exports symbol='XML_RELAXNG_ERR_ATTREXTRANS'/> + <exports symbol='XML_RELAXNG_ERR_ATTRNAME'/> + <exports symbol='XML_RELAXNG_ERR_ATTRNONS'/> + <exports symbol='XML_RELAXNG_ERR_ATTRVALID'/> + <exports symbol='XML_RELAXNG_ERR_ATTRWRONGNS'/> + <exports symbol='XML_RELAXNG_ERR_CONTENTVALID'/> + <exports symbol='XML_RELAXNG_ERR_DATAELEM'/> + <exports symbol='XML_RELAXNG_ERR_DATATYPE'/> + <exports symbol='XML_RELAXNG_ERR_DUPID'/> + <exports symbol='XML_RELAXNG_ERR_ELEMEXTRANS'/> + <exports symbol='XML_RELAXNG_ERR_ELEMNAME'/> + <exports symbol='XML_RELAXNG_ERR_ELEMNONS'/> + <exports symbol='XML_RELAXNG_ERR_ELEMNOTEMPTY'/> + <exports symbol='XML_RELAXNG_ERR_ELEMWRONG'/> + <exports symbol='XML_RELAXNG_ERR_ELEMWRONGNS'/> + <exports symbol='XML_RELAXNG_ERR_EXTRACONTENT'/> + <exports symbol='XML_RELAXNG_ERR_EXTRADATA'/> + <exports symbol='XML_RELAXNG_ERR_INTEREXTRA'/> + <exports symbol='XML_RELAXNG_ERR_INTERNAL'/> + <exports symbol='XML_RELAXNG_ERR_INTERNODATA'/> + <exports symbol='XML_RELAXNG_ERR_INTERSEQ'/> + <exports symbol='XML_RELAXNG_ERR_INVALIDATTR'/> + <exports symbol='XML_RELAXNG_ERR_LACKDATA'/> + <exports symbol='XML_RELAXNG_ERR_LIST'/> + <exports symbol='XML_RELAXNG_ERR_LISTELEM'/> + <exports symbol='XML_RELAXNG_ERR_LISTEMPTY'/> + <exports symbol='XML_RELAXNG_ERR_LISTEXTRA'/> + <exports symbol='XML_RELAXNG_ERR_MEMORY'/> + <exports symbol='XML_RELAXNG_ERR_NODEFINE'/> + <exports symbol='XML_RELAXNG_ERR_NOELEM'/> + <exports symbol='XML_RELAXNG_ERR_NOGRAMMAR'/> + <exports symbol='XML_RELAXNG_ERR_NOSTATE'/> + <exports symbol='XML_RELAXNG_ERR_NOTELEM'/> + <exports symbol='XML_RELAXNG_ERR_TEXTWRONG'/> + <exports symbol='XML_RELAXNG_ERR_TYPE'/> + <exports symbol='XML_RELAXNG_ERR_TYPECMP'/> + <exports symbol='XML_RELAXNG_ERR_TYPEVAL'/> + <exports symbol='XML_RELAXNG_ERR_VALELEM'/> + <exports symbol='XML_RELAXNG_ERR_VALUE'/> + <exports symbol='XML_RELAXNG_OK'/> + <exports symbol='xmlRelaxNG'/> + <exports symbol='xmlRelaxNGCleanupTypes'/> + <exports symbol='xmlRelaxNGDump'/> + <exports symbol='xmlRelaxNGDumpTree'/> + <exports symbol='xmlRelaxNGFree'/> + <exports symbol='xmlRelaxNGFreeParserCtxt'/> + <exports symbol='xmlRelaxNGFreeValidCtxt'/> + <exports symbol='xmlRelaxNGGetParserErrors'/> + <exports symbol='xmlRelaxNGGetValidErrors'/> + <exports symbol='xmlRelaxNGNewDocParserCtxt'/> + <exports symbol='xmlRelaxNGNewMemParserCtxt'/> + <exports symbol='xmlRelaxNGNewParserCtxt'/> + <exports symbol='xmlRelaxNGNewValidCtxt'/> + <exports symbol='xmlRelaxNGParse'/> + <exports symbol='xmlRelaxNGParserCtxt'/> + <exports symbol='xmlRelaxNGParserCtxtPtr'/> + <exports symbol='xmlRelaxNGPtr'/> + <exports symbol='xmlRelaxNGSetParserErrors'/> + <exports symbol='xmlRelaxNGSetValidErrors'/> + <exports symbol='xmlRelaxNGValidCtxt'/> + <exports symbol='xmlRelaxNGValidCtxtPtr'/> + <exports symbol='xmlRelaxNGValidErr'/> + <exports symbol='xmlRelaxNGValidateDoc'/> + <exports symbol='xmlRelaxNGValidateFullElement'/> + <exports symbol='xmlRelaxNGValidatePopElement'/> + <exports symbol='xmlRelaxNGValidatePushCData'/> + <exports symbol='xmlRelaxNGValidatePushElement'/> + <exports symbol='xmlRelaxNGValidityErrorFunc'/> + <exports symbol='xmlRelaxNGValidityWarningFunc'/> </file> <file name='uri'> <exports symbol='_xmlURI'/> @@ -2826,66 +2901,23 @@ <exports symbol='xmlURIPtr'/> <exports symbol='xmlURIUnescapeString'/> </file> - <file name='encoding'> - <exports symbol='UTF8Toisolat1'/> - <exports symbol='XML_CHAR_ENCODING_2022_JP'/> - <exports symbol='XML_CHAR_ENCODING_8859_1'/> - <exports symbol='XML_CHAR_ENCODING_8859_2'/> - <exports symbol='XML_CHAR_ENCODING_8859_3'/> - <exports symbol='XML_CHAR_ENCODING_8859_4'/> - <exports symbol='XML_CHAR_ENCODING_8859_5'/> - <exports symbol='XML_CHAR_ENCODING_8859_6'/> - <exports symbol='XML_CHAR_ENCODING_8859_7'/> - <exports symbol='XML_CHAR_ENCODING_8859_8'/> - <exports symbol='XML_CHAR_ENCODING_8859_9'/> - <exports symbol='XML_CHAR_ENCODING_ASCII'/> - <exports symbol='XML_CHAR_ENCODING_EBCDIC'/> - <exports symbol='XML_CHAR_ENCODING_ERROR'/> - <exports symbol='XML_CHAR_ENCODING_EUC_JP'/> - <exports symbol='XML_CHAR_ENCODING_NONE'/> - <exports symbol='XML_CHAR_ENCODING_SHIFT_JIS'/> - <exports symbol='XML_CHAR_ENCODING_UCS2'/> - <exports symbol='XML_CHAR_ENCODING_UCS4BE'/> - <exports symbol='XML_CHAR_ENCODING_UCS4LE'/> - <exports symbol='XML_CHAR_ENCODING_UCS4_2143'/> - <exports symbol='XML_CHAR_ENCODING_UCS4_3412'/> - <exports symbol='XML_CHAR_ENCODING_UTF16BE'/> - <exports symbol='XML_CHAR_ENCODING_UTF16LE'/> - <exports symbol='XML_CHAR_ENCODING_UTF8'/> - <exports symbol='_xmlCharEncodingHandler'/> - <exports symbol='isolat1ToUTF8'/> - <exports symbol='xmlAddEncodingAlias'/> - <exports symbol='xmlCharEncCloseFunc'/> - <exports symbol='xmlCharEncFirstLine'/> - <exports symbol='xmlCharEncInFunc'/> - <exports symbol='xmlCharEncOutFunc'/> - <exports symbol='xmlCharEncoding'/> - <exports symbol='xmlCharEncodingHandler'/> - <exports symbol='xmlCharEncodingHandlerPtr'/> - <exports symbol='xmlCharEncodingInputFunc'/> - <exports symbol='xmlCharEncodingOutputFunc'/> - <exports symbol='xmlCheckUTF8'/> - <exports symbol='xmlCleanupCharEncodingHandlers'/> - <exports symbol='xmlCleanupEncodingAliases'/> - <exports symbol='xmlDelEncodingAlias'/> - <exports symbol='xmlDetectCharEncoding'/> - <exports symbol='xmlFindCharEncodingHandler'/> - <exports symbol='xmlGetCharEncodingHandler'/> - <exports symbol='xmlGetCharEncodingName'/> - <exports symbol='xmlGetEncodingAlias'/> - <exports symbol='xmlGetUTF8Char'/> - <exports symbol='xmlInitCharEncodingHandlers'/> - <exports symbol='xmlNewCharEncodingHandler'/> - <exports symbol='xmlParseCharEncoding'/> - <exports symbol='xmlRegisterCharEncodingHandler'/> - <exports symbol='xmlUTF8Charcmp'/> - <exports symbol='xmlUTF8Size'/> - <exports symbol='xmlUTF8Strlen'/> - <exports symbol='xmlUTF8Strloc'/> - <exports symbol='xmlUTF8Strndup'/> - <exports symbol='xmlUTF8Strpos'/> - <exports symbol='xmlUTF8Strsize'/> - <exports symbol='xmlUTF8Strsub'/> + <file name='nanohttp'> + <exports symbol='xmlNanoHTTPAuthHeader'/> + <exports symbol='xmlNanoHTTPCleanup'/> + <exports symbol='xmlNanoHTTPClose'/> + <exports symbol='xmlNanoHTTPEncoding'/> + <exports symbol='xmlNanoHTTPFetch'/> + <exports symbol='xmlNanoHTTPInit'/> + <exports symbol='xmlNanoHTTPMethod'/> + <exports symbol='xmlNanoHTTPMethodRedir'/> + <exports symbol='xmlNanoHTTPMimeType'/> + <exports symbol='xmlNanoHTTPOpen'/> + <exports symbol='xmlNanoHTTPOpenRedir'/> + <exports symbol='xmlNanoHTTPRead'/> + <exports symbol='xmlNanoHTTPRedir'/> + <exports symbol='xmlNanoHTTPReturnCode'/> + <exports symbol='xmlNanoHTTPSave'/> + <exports symbol='xmlNanoHTTPScanProxy'/> </file> </files> <symbols> @@ -8511,9 +8543,9 @@ actually an xmlCharEncoding'/> <arg name='fp' type='FILE *' info='a FILE descriptor used as the output file, if NULL, the result is written to the file .memorylist'/> </function> <function name='xmlMemFree' file='xmlmemory'> - <info>a free() equivalent, with error checking.</info> + <info></info> <return type='void'/> - <arg name='ptr' type='void *' info='the memory block pointer'/> + <arg name='ptr' type='void *' info=''/> </function> <function name='xmlMemGet' file='xmlmemory'> <info>Provides the memory access functions set currently in use</info> @@ -8524,15 +8556,15 @@ actually an xmlCharEncoding'/> <arg name='strdupFunc' type='xmlStrdupFunc *' info='place to save the strdup() function in use'/> </function> <function name='xmlMemMalloc' file='xmlmemory'> - <info>a malloc() equivalent, with logging of the allocation info.</info> - <return type='void *' info='a pointer to the allocated area or NULL in case of lack of memory.'/> - <arg name='size' type='size_t' info='an int specifying the size in byte to allocate.'/> + <info></info> + <return type='void *' info=''/> + <arg name='size' type='size_t' info=''/> </function> <function name='xmlMemRealloc' file='xmlmemory'> - <info>a realloc() equivalent, with logging of the allocation info.</info> - <return type='void *' info='a pointer to the allocated area or NULL in case of lack of memory.'/> - <arg name='ptr' type='void *' info='the initial memory block pointer'/> - <arg name='size' type='size_t' info='an int specifying the size in byte to allocate.'/> + <info></info> + <return type='void *' info=''/> + <arg name='ptr' type='void *' info=''/> + <arg name='size' type='size_t' info=''/> </function> <function name='xmlMemSetup' file='xmlmemory'> <info>Override the default memory access functions with a new set This has to be called before any other libxml routines ! Should this be blocked if there was already some allocations done ?</info> @@ -8564,9 +8596,9 @@ actually an xmlCharEncoding'/> <return type='void'/> </function> <function name='xmlMemoryStrdup' file='xmlmemory'> - <info>a strdup() equivalent, with logging of the allocation info.</info> - <return type='char *' info='a pointer to the new string or NULL if allocation error occurred.'/> - <arg name='str' type='const char *' info='the initial string pointer'/> + <info></info> + <return type='char *' info=''/> + <arg name='str' type='const char *' info=''/> </function> <function name='xmlMutexLock' file='threads'> <info>xmlMutexLock() is used to lock a libxml2 token.</info> @@ -12158,6 +12190,11 @@ actually an xmlCharEncoding'/> <return type='const char *' info=''/> <arg name='v' type='const char *' info=''/> </function> + <function name='xmlUCSIsAegeanNumbers' file='xmlunicode'> + <info>Check whether the character is part of AegeanNumbers UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsAlphabeticPresentationForms' file='xmlunicode'> <info>Check whether the character is part of AlphabeticPresentationForms UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12199,7 +12236,7 @@ actually an xmlCharEncoding'/> <arg name='code' type='int' info='UCS code point'/> </function> <function name='xmlUCSIsBlock' file='xmlunicode'> - <info>Check whether the caracter is part of the UCS Block</info> + <info>Check whether the character is part of the UCS Block</info> <return type='int' info='1 if true, 0 if false and -1 on unknown block'/> <arg name='code' type='int' info='UCS code point'/> <arg name='block' type='const char *' info='UCS block name'/> @@ -12229,6 +12266,11 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsBuhid' file='xmlunicode'> + <info>Check whether the character is part of Buhid UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsByzantineMusicalSymbols' file='xmlunicode'> <info>Check whether the character is part of ByzantineMusicalSymbols UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12280,7 +12322,7 @@ actually an xmlCharEncoding'/> <arg name='code' type='int' info='UCS code point'/> </function> <function name='xmlUCSIsCat' file='xmlunicode'> - <info>Check whether the caracter is part of the UCS Category</info> + <info>Check whether the character is part of the UCS Category</info> <return type='int' info='1 if true, 0 if false and -1 on unknown category'/> <arg name='code' type='int' info='UCS code point'/> <arg name='cat' type='const char *' info='UCS Category name'/> @@ -12475,6 +12517,11 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsCombiningDiacriticalMarksforSymbols' file='xmlunicode'> + <info>Check whether the character is part of CombiningDiacriticalMarksforSymbols UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsCombiningHalfMarks' file='xmlunicode'> <info>Check whether the character is part of CombiningHalfMarks UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12495,11 +12542,21 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsCypriotSyllabary' file='xmlunicode'> + <info>Check whether the character is part of CypriotSyllabary UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsCyrillic' file='xmlunicode'> <info>Check whether the character is part of Cyrillic UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsCyrillicSupplement' file='xmlunicode'> + <info>Check whether the character is part of CyrillicSupplement UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsDeseret' file='xmlunicode'> <info>Check whether the character is part of Deseret UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12560,6 +12617,11 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsGreekandCoptic' file='xmlunicode'> + <info>Check whether the character is part of GreekandCoptic UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsGujarati' file='xmlunicode'> <info>Check whether the character is part of Gujarati UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12590,6 +12652,11 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsHanunoo' file='xmlunicode'> + <info>Check whether the character is part of Hanunoo UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsHebrew' file='xmlunicode'> <info>Check whether the character is part of Hebrew UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12640,11 +12707,21 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsKatakanaPhoneticExtensions' file='xmlunicode'> + <info>Check whether the character is part of KatakanaPhoneticExtensions UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsKhmer' file='xmlunicode'> <info>Check whether the character is part of Khmer UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsKhmerSymbols' file='xmlunicode'> + <info>Check whether the character is part of KhmerSymbols UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsLao' file='xmlunicode'> <info>Check whether the character is part of Lao UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12675,6 +12752,21 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsLimbu' file='xmlunicode'> + <info>Check whether the character is part of Limbu UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsLinearBIdeograms' file='xmlunicode'> + <info>Check whether the character is part of LinearBIdeograms UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsLinearBSyllabary' file='xmlunicode'> + <info>Check whether the character is part of LinearBSyllabary UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsLowSurrogates' file='xmlunicode'> <info>Check whether the character is part of LowSurrogates UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12695,11 +12787,26 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsMiscellaneousMathematicalSymbolsA' file='xmlunicode'> + <info>Check whether the character is part of MiscellaneousMathematicalSymbols-A UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsMiscellaneousMathematicalSymbolsB' file='xmlunicode'> + <info>Check whether the character is part of MiscellaneousMathematicalSymbols-B UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsMiscellaneousSymbols' file='xmlunicode'> <info>Check whether the character is part of MiscellaneousSymbols UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsMiscellaneousSymbolsandArrows' file='xmlunicode'> + <info>Check whether the character is part of MiscellaneousSymbolsandArrows UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsMiscellaneousTechnical' file='xmlunicode'> <info>Check whether the character is part of MiscellaneousTechnical UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12745,16 +12852,36 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsOsmanya' file='xmlunicode'> + <info>Check whether the character is part of Osmanya UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsPhoneticExtensions' file='xmlunicode'> + <info>Check whether the character is part of PhoneticExtensions UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsPrivateUse' file='xmlunicode'> <info>Check whether the character is part of PrivateUse UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsPrivateUseArea' file='xmlunicode'> + <info>Check whether the character is part of PrivateUseArea UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsRunic' file='xmlunicode'> <info>Check whether the character is part of Runic UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsShavian' file='xmlunicode'> + <info>Check whether the character is part of Shavian UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsSinhala' file='xmlunicode'> <info>Check whether the character is part of Sinhala UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12780,16 +12907,61 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsSupplementalArrowsA' file='xmlunicode'> + <info>Check whether the character is part of SupplementalArrows-A UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsSupplementalArrowsB' file='xmlunicode'> + <info>Check whether the character is part of SupplementalArrows-B UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsSupplementalMathematicalOperators' file='xmlunicode'> + <info>Check whether the character is part of SupplementalMathematicalOperators UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsSupplementaryPrivateUseAreaA' file='xmlunicode'> + <info>Check whether the character is part of SupplementaryPrivateUseArea-A UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsSupplementaryPrivateUseAreaB' file='xmlunicode'> + <info>Check whether the character is part of SupplementaryPrivateUseArea-B UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsSyriac' file='xmlunicode'> <info>Check whether the character is part of Syriac UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsTagalog' file='xmlunicode'> + <info>Check whether the character is part of Tagalog UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsTagbanwa' file='xmlunicode'> + <info>Check whether the character is part of Tagbanwa UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsTags' file='xmlunicode'> <info>Check whether the character is part of Tags UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsTaiLe' file='xmlunicode'> + <info>Check whether the character is part of TaiLe UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsTaiXuanJingSymbols' file='xmlunicode'> + <info>Check whether the character is part of TaiXuanJingSymbols UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsTamil' file='xmlunicode'> <info>Check whether the character is part of Tamil UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12815,11 +12987,26 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsUgaritic' file='xmlunicode'> + <info>Check whether the character is part of Ugaritic UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsUnifiedCanadianAboriginalSyllabics' file='xmlunicode'> <info>Check whether the character is part of UnifiedCanadianAboriginalSyllabics UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsVariationSelectors' file='xmlunicode'> + <info>Check whether the character is part of VariationSelectors UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> + <function name='xmlUCSIsVariationSelectorsSupplement' file='xmlunicode'> + <info>Check whether the character is part of VariationSelectorsSupplement UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlUCSIsYiRadicals' file='xmlunicode'> <info>Check whether the character is part of YiRadicals UCS Block</info> <return type='int' info='1 if true 0 otherwise'/> @@ -12830,6 +13017,11 @@ actually an xmlCharEncoding'/> <return type='int' info='1 if true 0 otherwise'/> <arg name='code' type='int' info='UCS code point'/> </function> + <function name='xmlUCSIsYijingHexagramSymbols' file='xmlunicode'> + <info>Check whether the character is part of YijingHexagramSymbols UCS Block</info> + <return type='int' info='1 if true 0 otherwise'/> + <arg name='code' type='int' info='UCS code point'/> + </function> <function name='xmlURIEscape' file='uri'> <info>Escaping routine, does not do validity checks ! It will try to escape the chars needing this, but this is heuristic based it's impossible to be sure.</info> <return type='xmlChar *' info='an copy of the string, but escaped 25 May 2001 Uses xmlParseURI and xmlURIEscapeStr to try to escape correctly according to RFC2396. - Carl Douglas'/> diff --git a/genUnicode.py b/genUnicode.py index 8f32a659..daee97b2 100755 --- a/genUnicode.py +++ b/genUnicode.py @@ -1,40 +1,88 @@ #!/usr/bin/python -u +# +# Original script modified in November 2003 to take advantage of +# the character-validation range routines, and updated to the +# current Unicode information (Version 4.0.1) +# +# NOTE: there is an 'alias' facility for blocks which are not present in +# the current release, but are needed for ABI compatibility. This +# must be accomplished MANUALLY! Define the alias in the variable +# 'blockAliases', then MANUALLY provide a function to return the +# appropriate value. +# import sys import string import time -sources = "Blocks-4.txt UnicodeData-3.1.0.txt" +webpage = "http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1d5b.html" +sources = "Blocks-4.0.1d1b.txt UnicodeData-4.0.1d1b.txt" + +blockAliases = "CombiningMarksforSymbols Greek PrivateUse" + +# minTableSize gives the minimum number of ranges which must be present +# before a range table is produced. If there are less than this +# number, inline comparisons are generated +minTableSize = 8 + +(blockfile, catfile) = string.split(sources) + +# +# First create a dictionary for the block names +# +BlockNames = {} + +# +# Next put in aliases for blocks not currently present, but needed +# for ABI compatibility (THIS IS A HORRIBLE HACK!) +# +aliases = string.split(blockAliases, ' ') +for name in aliases: + BlockNames[name] = [] +# +# Now process the "blocks" file, reducing it to a dictionary +# indexed by blockname, containing a tuple with the applicable +# block range +# try: - blocks = open("Blocks-4.txt", "r") + blocks = open(blockfile, "r") except: - print "Missing Blocks-4.txt, aborting ..." + print "Missing %s, aborting ..." % blockfile sys.exit(1) -BlockNames = {} for line in blocks.readlines(): if line[0] == '#': continue line = string.strip(line) if line == '': - continue + continue try: - fields = string.split(line, ';') - range = string.strip(fields[0]) - (start, end) = string.split(range, "..") - name = string.strip(fields[1]) - name = string.replace(name, ' ', '') + fields = string.split(line, ';') + range = string.strip(fields[0]) + (start, end) = string.split(range, "..") + name = string.strip(fields[1]) + name = string.replace(name, ' ', '') except: print "Failed to process line: %s" % (line) - continue + continue BlockNames[name] = ("0x"+start, "0x"+end) blocks.close() print "Parsed %d blocks descriptions" % (len(BlockNames.keys())) +# +# Next process the Categories file. This is more complex, since +# the file is in code sequence, and we need to invert it. We use +# a dictionary with index category-name, with each entry containing +# all the ranges (codepoints) of that category. Note that category +# names comprise two parts - the general category, and the "subclass" +# within that category. Therefore, both "general category" (which is +# the first character of the 2-character category-name) and the full +# (2-character) name are entered into this dictionary. +# try: - data = open("UnicodeData-3.1.0.txt", "r") + data = open(catfile, "r") except: - print "Missing UnicodeData-3.1.0.txt, aborting ..." + print "Missing %s, aborting ..." % catfile sys.exit(1) nbchar = 0; @@ -44,44 +92,50 @@ for line in data.readlines(): continue line = string.strip(line) if line == '': - continue + continue try: - fields = string.split(line, ';') - point = string.strip(fields[0]) - value = 0 - while point != '': - value = value * 16 - if point[0] >= '0' and point[0] <= '9': - value = value + ord(point[0]) - ord('0') - elif point[0] >= 'A' and point[0] <= 'F': - value = value + 10 + ord(point[0]) - ord('A') - elif point[0] >= 'a' and point[0] <= 'f': - value = value + 10 + ord(point[0]) - ord('a') - point = point[1:] - name = fields[2] + fields = string.split(line, ';') + point = string.strip(fields[0]) + value = 0 + while point != '': + value = value * 16 + if point[0] >= '0' and point[0] <= '9': + value = value + ord(point[0]) - ord('0') + elif point[0] >= 'A' and point[0] <= 'F': + value = value + 10 + ord(point[0]) - ord('A') + elif point[0] >= 'a' and point[0] <= 'f': + value = value + 10 + ord(point[0]) - ord('a') + point = point[1:] + name = fields[2] except: print "Failed to process line: %s" % (line) - continue + continue nbchar = nbchar + 1 + # update entry for "full name" try: - Categories[name].append(value) + Categories[name].append(value) except: try: - Categories[name] = [value] - except: - print "Failed to process line: %s" % (line) + Categories[name] = [value] + except: + print "Failed to process line: %s" % (line) + # update "general category" name try: - Categories[name[0]].append(value) + Categories[name[0]].append(value) except: try: - Categories[name[0]] = [value] - except: - print "Failed to process line: %s" % (line) - + Categories[name[0]] = [value] + except: + print "Failed to process line: %s" % (line) + blocks.close() print "Parsed %d char generating %d categories" % (nbchar, len(Categories.keys())) -#reduce the number list into ranges + +# +# The data is now all read. Time to process it into a more useful form. +# +# reduce the number list into ranges for cat in Categories.keys(): list = Categories[cat] start = -1 @@ -90,35 +144,45 @@ for cat in Categories.keys(): ranges = [] for val in list: if start == -1: - start = val - prev = val - continue - elif val == prev + 1: - prev = val - continue - elif prev == start: - ranges.append((prev, prev)) - start = val - prev = val - continue - else: - ranges.append((start, prev)) - start = val - prev = val - continue + start = val + prev = val + continue + elif val == prev + 1: + prev = val + continue + elif prev == start: + ranges.append((prev, prev)) + start = val + prev = val + continue + else: + ranges.append((start, prev)) + start = val + prev = val + continue if prev == start: ranges.append((prev, prev)) else: ranges.append((start, prev)) Categories[cat] = ranges - + +# +# Assure all data is in alphabetic order, since we will be doing binary +# searches on the tables. +# +bkeys = BlockNames.keys() +bkeys.sort() + +ckeys = Categories.keys() +ckeys.sort() + # # Generate the resulting files # try: - header = open("xmlunicode.h", "w") + header = open("include/libxml/xmlunicode.h", "w") except: - print "Failed to open xmlunicode.h" + print "Failed to open include/libxml/xmlunicode.h" sys.exit(1) try: @@ -135,7 +199,7 @@ header.write( * * This file is automatically generated from the * UCS description files of the Unicode Character Database - * http://www.unicode.org/Public/3.1-Update/UnicodeCharacterDatabase-3.1.0.html + * %s * using the genUnicode.py Python script. * * Generation date: %s @@ -152,14 +216,15 @@ header.write( extern "C" { #endif -""" % (date, sources)); +""" % (webpage, date, sources)); + output.write( """/* * xmlunicode.c: this module implements the Unicode character APIs * * This file is automatically generated from the * UCS description files of the Unicode Character Database - * http://www.unicode.org/Public/3.1-Update/UnicodeCharacterDatabase-3.1.0.html + * %s * using the genUnicode.py Python script. * * Generation date: %s @@ -175,15 +240,124 @@ output.write( #include <string.h> #include <libxml/xmlversion.h> #include <libxml/xmlunicode.h> +#include <libxml/chvalid.h> -""" % (date, sources)); +typedef int (xmlIntFunc)(int); /* just to keep one's mind untwisted */ -keys = BlockNames.keys() -keys.sort() -for block in keys: - (start, end) = BlockNames[block] +typedef struct { + const char *rangename; + xmlIntFunc *func; +} xmlUnicodeRange; + +typedef struct { + xmlUnicodeRange *table; + int numentries; +} xmlUnicodeNameTable; + + +static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname); + +static xmlUnicodeRange xmlUnicodeBlocks[] = { +""" % (webpage, date, sources)); + +flag = 0 +for block in bkeys: + name = string.replace(block, '-', '') + if flag: + output.write(',\n') + else: + flag = 1 + output.write(' {"%s", xmlUCSIs%s}' % (name, name)) +output.write('};\n\n') + +output.write('static xmlUnicodeRange xmlUnicodeCats[] = {\n') +flag = 0; +for name in ckeys: + if flag: + output.write(',\n') + else: + flag = 1 + output.write(' {"%s", xmlUCSIsCat%s}' % (name, name)) +output.write('};\n\n') + +# +# For any categories with more than minTableSize ranges we generate +# a range table suitable for xmlCharInRange +# +for name in ckeys: + if len(Categories[name]) > minTableSize: + numshort = 0 + numlong = 0 + ranges = Categories[name] + sptr = "NULL" + lptr = "NULL" + for range in ranges: + (low, high) = range + if high < 0x10000: + if numshort == 0: + pline = "static xmlChSRange xml%sS[] = {" % name + sptr = "xml%sS" % name + else: + pline += ", " + numshort += 1 + else: + if numlong == 0: + if numshort > 0: + output.write(pline + " };\n") + pline = "static xmlChLRange xml%sL[] = {" % name + lptr = "xml%sL" % name + else: + pline += ", " + numlong += 1 + if len(pline) > 60: + output.write(pline + "\n") + pline = " " + pline += "{%s, %s}" % (hex(low), hex(high)) + output.write(pline + " };\nstatic xmlChRangeGroup xml%sG = {%s,%s,%s,%s};\n\n" + % (name, numshort, numlong, sptr, lptr)) + + +output.write( +"""xmlUnicodeNameTable xmlUnicodeBlockTbl = {xmlUnicodeBlocks, %s}; +xmlUnicodeNameTable xmlUnicodeCatTbl = {xmlUnicodeCats, %s}; + +/** + * xmlUnicodeLookup: + * @tptr: pointer to the name table + * @name: name to be found + * + * binary table lookup for user-supplied name + * + * Returns pointer to range function if found, otherwise NULL + */ +static xmlIntFunc +*xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname) { + int low, high, mid, cmp; + xmlUnicodeRange *sptr; + + low = 0; + high = tptr->numentries - 1; + sptr = tptr->table; + while (low <= high) { + mid = (low + high) / 2; + if ((cmp=strcmp(tname, sptr[mid].rangename)) == 0) + return (sptr[mid].func); + if (cmp < 0) + high = mid - 1; + else + low = mid + 1; + } + return (NULL); +} + +""" % (len(BlockNames), len(Categories)) ) + +for block in bkeys: name = string.replace(block, '-', '') header.write("XMLPUBFUN int XMLCALL xmlUCSIs%s\t(int code);\n" % name) + if len(BlockNames[block]) == 0: # ignore aliases + continue + (start, end) = BlockNames[block] output.write("/**\n * xmlUCSIs%s:\n * @code: UCS code point\n" % (name)) output.write(" *\n * Check whether the character is part of %s UCS Block\n"% (block)) @@ -192,24 +366,30 @@ for block in keys: output.write(" return((code >= %s) && (code <= %s));\n" % (start, end)) output.write("}\n\n") -header.write("\nXMLPUBFUN int XMLCALL xmlUCSIsBlock\t(int code,\n\t\t\t const char *block);\n\n") -output.write("/**\n * xmlUCSIsBlock:\n * @code: UCS code point\n") -output.write(" * @block: UCS block name\n") -output.write(" *\n * Check whether the caracter is part of the UCS Block\n") -output.write(" *\n * Returns 1 if true, 0 if false and -1 on unknown block\n */\n"); -output.write("int\nxmlUCSIsBlock(int code, const char *block) {\n") -keys = BlockNames.keys() -keys.sort() -for block in keys: - name = string.replace(block, '-', '') - output.write(" if (!strcmp(block, \"%s\"))\n return(xmlUCSIs%s(code));\n" % - (block, name)); -output.write(" return(-1);\n}\n\n") +header.write("\nXMLPUBFUN int XMLCALL xmlUCSIsBlock\t(int code, const char *block);\n\n") +output.write( +"""/** + * xmlUCSIsBlock: + * @code: UCS code point + * @block: UCS block name + * + * Check whether the character is part of the UCS Block + * + * Returns 1 if true, 0 if false and -1 on unknown block + */ +int +xmlUCSIsBlock(int code, const char *block) { + xmlIntFunc *func; + + func = xmlUnicodeLookup(&xmlUnicodeBlockTbl, block); + if (func == NULL) + return (-1); + return (func(code)); +} +""") -keys = Categories.keys() -keys.sort() -for name in keys: +for name in ckeys: ranges = Categories[name] header.write("XMLPUBFUN int XMLCALL xmlUCSIsCat%s\t(int code);\n" % name) output.write("/**\n * xmlUCSIsCat%s:\n * @code: UCS code point\n" % (name)) @@ -217,33 +397,99 @@ for name in keys: (name)) output.write(" *\n * Returns 1 if true 0 otherwise\n */\n"); output.write("int\nxmlUCSIsCat%s(int code) {\n" % name) - start = 1 - for range in ranges: - (begin, end) = range; - if start: - output.write(" return("); - start = 0 - else: - output.write(" ||\n "); - if (begin == end): - output.write("(code == %s)" % (hex(begin))) - else: - output.write("((code >= %s) && (code <= %s))" % ( - hex(begin), hex(end))) + if len(Categories[name]) > minTableSize: + output.write(" return(xmlCharInRange((unsigned int)code, &xml%sG)" + % name) + else: + start = 1 + for range in ranges: + (begin, end) = range; + if start: + output.write(" return("); + start = 0 + else: + output.write(" ||\n "); + if (begin == end): + output.write("(code == %s)" % (hex(begin))) + else: + output.write("((code >= %s) && (code <= %s))" % ( + hex(begin), hex(end))) output.write(");\n}\n\n") -header.write("\nXMLPUBFUN int XMLCALL xmlUCSIsCat\t(int code,\n\t\t\t const char *cat);\n") -output.write("/**\n * xmlUCSIsCat:\n * @code: UCS code point\n") -output.write(" * @cat: UCS Category name\n") -output.write(" *\n * Check whether the caracter is part of the UCS Category\n") -output.write(" *\n * Returns 1 if true, 0 if false and -1 on unknown category\n */\n"); -output.write("int\nxmlUCSIsCat(int code, const char *cat) {\n") -keys = Categories.keys() -keys.sort() -for name in keys: - output.write(" if (!strcmp(cat, \"%s\"))\n return(xmlUCSIsCat%s(code));\n" % - (name, name)); -output.write(" return(-1);\n}\n\n") +header.write("\nXMLPUBFUN int XMLCALL xmlUCSIsCat\t(int code, const char *cat);\n") +output.write( +"""/** + * xmlUCSIsCat: + * @code: UCS code point + * @cat: UCS Category name + * + * Check whether the character is part of the UCS Category + * + * Returns 1 if true, 0 if false and -1 on unknown category + */ +int +xmlUCSIsCat(int code, const char *cat) { + xmlIntFunc *func; + + func = xmlUnicodeLookup(&xmlUnicodeCatTbl, cat); + if (func == NULL) + return (-1); + return (func(code)); +} + +/* + The following routines are an UGLY HACK to provide aliases for block + names which are not in the current release, but are needed for ABI + compatibility. +*/ + +/** + * xmlUCSIsCombiningMarksforSymbols: + * @code: UCS code point + * + * Check whether the character is part of CombiningMarksforSymbols UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsCombiningMarksforSymbols(int code) { + return((code >= 0x20D0) && (code <= 0x20FF)); +} + +/** + * xmlUCSIsGreek: + * @code: UCS code point + * + * Check whether the character is part of Greek UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsGreek(int code) { + return((code >= 0x370) && (code <= 0x3FF)); +} + +/** + * xmlUCSIsPrivateUse: + * @code: UCS code point + * + * Check whether the character is part of PrivateUse UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsPrivateUse(int code) { + if ( ((code >= 0xE000) && (code <= 0xF8FF)) || + ((code >= 0xF0000) && (code <= 0xFFFFD))|| + ((code >= 0x100000)&& (code <= 0x10FFFD)) ) + return (1); + else + return (0); +} + + +#endif /* LIBXML_UNICODE_ENABLED */ +""") header.write(""" #ifdef __cplusplus @@ -251,8 +497,6 @@ header.write(""" #endif #endif /* __XML_UNICODE_H__ */ """); -output.write(""" -#endif /* LIBXML_UNICODE_ENABLED */ -"""); + header.close() output.close() diff --git a/include/libxml/xmlunicode.h b/include/libxml/xmlunicode.h index 8c240969..a42cc05c 100644 --- a/include/libxml/xmlunicode.h +++ b/include/libxml/xmlunicode.h @@ -3,11 +3,11 @@ * * This file is automatically generated from the * UCS description files of the Unicode Character Database - * http://www.unicode.org/Public/3.1-Update/UnicodeCharacterDatabase-3.1.0.html + * http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1d5b.html * using the genUnicode.py Python script. * - * Generation date: Mon Aug 25 10:45:50 2003 - * Sources: Blocks-4.txt UnicodeData-3.1.0.txt + * Generation date: Sun Nov 9 20:13:11 2003 + * Sources: Blocks-4.0.1d1b.txt UnicodeData-4.0.1d1b.txt * Daniel Veillard <veillard@redhat.com> */ @@ -20,6 +20,7 @@ extern "C" { #endif +XMLPUBFUN int XMLCALL xmlUCSIsAegeanNumbers (int code); XMLPUBFUN int XMLCALL xmlUCSIsAlphabeticPresentationForms (int code); XMLPUBFUN int XMLCALL xmlUCSIsArabic (int code); XMLPUBFUN int XMLCALL xmlUCSIsArabicPresentationFormsA (int code); @@ -33,6 +34,7 @@ XMLPUBFUN int XMLCALL xmlUCSIsBopomofo (int code); XMLPUBFUN int XMLCALL xmlUCSIsBopomofoExtended (int code); XMLPUBFUN int XMLCALL xmlUCSIsBoxDrawing (int code); XMLPUBFUN int XMLCALL xmlUCSIsBraillePatterns (int code); +XMLPUBFUN int XMLCALL xmlUCSIsBuhid (int code); XMLPUBFUN int XMLCALL xmlUCSIsByzantineMusicalSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibility (int code); XMLPUBFUN int XMLCALL xmlUCSIsCJKCompatibilityForms (int code); @@ -45,11 +47,14 @@ XMLPUBFUN int XMLCALL xmlUCSIsCJKUnifiedIdeographsExtensionA (int code); XMLPUBFUN int XMLCALL xmlUCSIsCJKUnifiedIdeographsExtensionB (int code); XMLPUBFUN int XMLCALL xmlUCSIsCherokee (int code); XMLPUBFUN int XMLCALL xmlUCSIsCombiningDiacriticalMarks (int code); +XMLPUBFUN int XMLCALL xmlUCSIsCombiningDiacriticalMarksforSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsCombiningHalfMarks (int code); XMLPUBFUN int XMLCALL xmlUCSIsCombiningMarksforSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsControlPictures (int code); XMLPUBFUN int XMLCALL xmlUCSIsCurrencySymbols (int code); +XMLPUBFUN int XMLCALL xmlUCSIsCypriotSyllabary (int code); XMLPUBFUN int XMLCALL xmlUCSIsCyrillic (int code); +XMLPUBFUN int XMLCALL xmlUCSIsCyrillicSupplement (int code); XMLPUBFUN int XMLCALL xmlUCSIsDeseret (int code); XMLPUBFUN int XMLCALL xmlUCSIsDevanagari (int code); XMLPUBFUN int XMLCALL xmlUCSIsDingbats (int code); @@ -62,12 +67,14 @@ XMLPUBFUN int XMLCALL xmlUCSIsGeorgian (int code); XMLPUBFUN int XMLCALL xmlUCSIsGothic (int code); XMLPUBFUN int XMLCALL xmlUCSIsGreek (int code); XMLPUBFUN int XMLCALL xmlUCSIsGreekExtended (int code); +XMLPUBFUN int XMLCALL xmlUCSIsGreekandCoptic (int code); XMLPUBFUN int XMLCALL xmlUCSIsGujarati (int code); XMLPUBFUN int XMLCALL xmlUCSIsGurmukhi (int code); XMLPUBFUN int XMLCALL xmlUCSIsHalfwidthandFullwidthForms (int code); XMLPUBFUN int XMLCALL xmlUCSIsHangulCompatibilityJamo (int code); XMLPUBFUN int XMLCALL xmlUCSIsHangulJamo (int code); XMLPUBFUN int XMLCALL xmlUCSIsHangulSyllables (int code); +XMLPUBFUN int XMLCALL xmlUCSIsHanunoo (int code); XMLPUBFUN int XMLCALL xmlUCSIsHebrew (int code); XMLPUBFUN int XMLCALL xmlUCSIsHighPrivateUseSurrogates (int code); XMLPUBFUN int XMLCALL xmlUCSIsHighSurrogates (int code); @@ -78,18 +85,26 @@ XMLPUBFUN int XMLCALL xmlUCSIsKanbun (int code); XMLPUBFUN int XMLCALL xmlUCSIsKangxiRadicals (int code); XMLPUBFUN int XMLCALL xmlUCSIsKannada (int code); XMLPUBFUN int XMLCALL xmlUCSIsKatakana (int code); +XMLPUBFUN int XMLCALL xmlUCSIsKatakanaPhoneticExtensions (int code); XMLPUBFUN int XMLCALL xmlUCSIsKhmer (int code); +XMLPUBFUN int XMLCALL xmlUCSIsKhmerSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsLao (int code); XMLPUBFUN int XMLCALL xmlUCSIsLatin1Supplement (int code); XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedA (int code); XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedB (int code); XMLPUBFUN int XMLCALL xmlUCSIsLatinExtendedAdditional (int code); XMLPUBFUN int XMLCALL xmlUCSIsLetterlikeSymbols (int code); +XMLPUBFUN int XMLCALL xmlUCSIsLimbu (int code); +XMLPUBFUN int XMLCALL xmlUCSIsLinearBIdeograms (int code); +XMLPUBFUN int XMLCALL xmlUCSIsLinearBSyllabary (int code); XMLPUBFUN int XMLCALL xmlUCSIsLowSurrogates (int code); XMLPUBFUN int XMLCALL xmlUCSIsMalayalam (int code); XMLPUBFUN int XMLCALL xmlUCSIsMathematicalAlphanumericSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsMathematicalOperators (int code); +XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousMathematicalSymbolsA (int code); +XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousMathematicalSymbolsB (int code); XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousSymbols (int code); +XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousSymbolsandArrows (int code); XMLPUBFUN int XMLCALL xmlUCSIsMiscellaneousTechnical (int code); XMLPUBFUN int XMLCALL xmlUCSIsMongolian (int code); XMLPUBFUN int XMLCALL xmlUCSIsMusicalSymbols (int code); @@ -99,26 +114,42 @@ XMLPUBFUN int XMLCALL xmlUCSIsOgham (int code); XMLPUBFUN int XMLCALL xmlUCSIsOldItalic (int code); XMLPUBFUN int XMLCALL xmlUCSIsOpticalCharacterRecognition (int code); XMLPUBFUN int XMLCALL xmlUCSIsOriya (int code); +XMLPUBFUN int XMLCALL xmlUCSIsOsmanya (int code); +XMLPUBFUN int XMLCALL xmlUCSIsPhoneticExtensions (int code); XMLPUBFUN int XMLCALL xmlUCSIsPrivateUse (int code); +XMLPUBFUN int XMLCALL xmlUCSIsPrivateUseArea (int code); XMLPUBFUN int XMLCALL xmlUCSIsRunic (int code); +XMLPUBFUN int XMLCALL xmlUCSIsShavian (int code); XMLPUBFUN int XMLCALL xmlUCSIsSinhala (int code); XMLPUBFUN int XMLCALL xmlUCSIsSmallFormVariants (int code); XMLPUBFUN int XMLCALL xmlUCSIsSpacingModifierLetters (int code); XMLPUBFUN int XMLCALL xmlUCSIsSpecials (int code); XMLPUBFUN int XMLCALL xmlUCSIsSuperscriptsandSubscripts (int code); +XMLPUBFUN int XMLCALL xmlUCSIsSupplementalArrowsA (int code); +XMLPUBFUN int XMLCALL xmlUCSIsSupplementalArrowsB (int code); +XMLPUBFUN int XMLCALL xmlUCSIsSupplementalMathematicalOperators (int code); +XMLPUBFUN int XMLCALL xmlUCSIsSupplementaryPrivateUseAreaA (int code); +XMLPUBFUN int XMLCALL xmlUCSIsSupplementaryPrivateUseAreaB (int code); XMLPUBFUN int XMLCALL xmlUCSIsSyriac (int code); +XMLPUBFUN int XMLCALL xmlUCSIsTagalog (int code); +XMLPUBFUN int XMLCALL xmlUCSIsTagbanwa (int code); XMLPUBFUN int XMLCALL xmlUCSIsTags (int code); +XMLPUBFUN int XMLCALL xmlUCSIsTaiLe (int code); +XMLPUBFUN int XMLCALL xmlUCSIsTaiXuanJingSymbols (int code); XMLPUBFUN int XMLCALL xmlUCSIsTamil (int code); XMLPUBFUN int XMLCALL xmlUCSIsTelugu (int code); XMLPUBFUN int XMLCALL xmlUCSIsThaana (int code); XMLPUBFUN int XMLCALL xmlUCSIsThai (int code); XMLPUBFUN int XMLCALL xmlUCSIsTibetan (int code); +XMLPUBFUN int XMLCALL xmlUCSIsUgaritic (int code); XMLPUBFUN int XMLCALL xmlUCSIsUnifiedCanadianAboriginalSyllabics (int code); +XMLPUBFUN int XMLCALL xmlUCSIsVariationSelectors (int code); +XMLPUBFUN int XMLCALL xmlUCSIsVariationSelectorsSupplement (int code); XMLPUBFUN int XMLCALL xmlUCSIsYiRadicals (int code); XMLPUBFUN int XMLCALL xmlUCSIsYiSyllables (int code); +XMLPUBFUN int XMLCALL xmlUCSIsYijingHexagramSymbols (int code); -XMLPUBFUN int XMLCALL xmlUCSIsBlock (int code, - const char *block); +XMLPUBFUN int XMLCALL xmlUCSIsBlock (int code, const char *block); XMLPUBFUN int XMLCALL xmlUCSIsCatC (int code); XMLPUBFUN int XMLCALL xmlUCSIsCatCc (int code); @@ -157,8 +188,7 @@ XMLPUBFUN int XMLCALL xmlUCSIsCatZl (int code); XMLPUBFUN int XMLCALL xmlUCSIsCatZp (int code); XMLPUBFUN int XMLCALL xmlUCSIsCatZs (int code); -XMLPUBFUN int XMLCALL xmlUCSIsCat (int code, - const char *cat); +XMLPUBFUN int XMLCALL xmlUCSIsCat (int code, const char *cat); #ifdef __cplusplus } diff --git a/python/generator.py b/python/generator.py index 64baea74..55bdd0bc 100755 --- a/python/generator.py +++ b/python/generator.py @@ -570,6 +570,7 @@ def buildStubs(): wrapper.write("/* Generated */\n\n") wrapper.write("#include <Python.h>\n") # wrapper.write("#include \"config.h\"\n") + wrapper.write("#define IN_LIBXML\n") wrapper.write("#include <libxml/xmlversion.h>\n") wrapper.write("#include <libxml/tree.h>\n") wrapper.write("#include <libxml/xmlschemastypes.h>\n") diff --git a/python/libxml2class.txt b/python/libxml2class.txt index 17a1d07b..48b80530 100644 --- a/python/libxml2class.txt +++ b/python/libxml2class.txt @@ -229,6 +229,7 @@ schemaCleanupTypes() schemaInitTypes() # functions from module xmlunicode +uCSIsAegeanNumbers() uCSIsAlphabeticPresentationForms() uCSIsArabic() uCSIsArabicPresentationFormsA() @@ -243,6 +244,7 @@ uCSIsBopomofo() uCSIsBopomofoExtended() uCSIsBoxDrawing() uCSIsBraillePatterns() +uCSIsBuhid() uCSIsByzantineMusicalSymbols() uCSIsCJKCompatibility() uCSIsCJKCompatibilityForms() @@ -292,11 +294,14 @@ uCSIsCatZp() uCSIsCatZs() uCSIsCherokee() uCSIsCombiningDiacriticalMarks() +uCSIsCombiningDiacriticalMarksforSymbols() uCSIsCombiningHalfMarks() uCSIsCombiningMarksforSymbols() uCSIsControlPictures() uCSIsCurrencySymbols() +uCSIsCypriotSyllabary() uCSIsCyrillic() +uCSIsCyrillicSupplement() uCSIsDeseret() uCSIsDevanagari() uCSIsDingbats() @@ -309,12 +314,14 @@ uCSIsGeorgian() uCSIsGothic() uCSIsGreek() uCSIsGreekExtended() +uCSIsGreekandCoptic() uCSIsGujarati() uCSIsGurmukhi() uCSIsHalfwidthandFullwidthForms() uCSIsHangulCompatibilityJamo() uCSIsHangulJamo() uCSIsHangulSyllables() +uCSIsHanunoo() uCSIsHebrew() uCSIsHighPrivateUseSurrogates() uCSIsHighSurrogates() @@ -325,18 +332,26 @@ uCSIsKanbun() uCSIsKangxiRadicals() uCSIsKannada() uCSIsKatakana() +uCSIsKatakanaPhoneticExtensions() uCSIsKhmer() +uCSIsKhmerSymbols() uCSIsLao() uCSIsLatin1Supplement() uCSIsLatinExtendedA() uCSIsLatinExtendedAdditional() uCSIsLatinExtendedB() uCSIsLetterlikeSymbols() +uCSIsLimbu() +uCSIsLinearBIdeograms() +uCSIsLinearBSyllabary() uCSIsLowSurrogates() uCSIsMalayalam() uCSIsMathematicalAlphanumericSymbols() uCSIsMathematicalOperators() +uCSIsMiscellaneousMathematicalSymbolsA() +uCSIsMiscellaneousMathematicalSymbolsB() uCSIsMiscellaneousSymbols() +uCSIsMiscellaneousSymbolsandArrows() uCSIsMiscellaneousTechnical() uCSIsMongolian() uCSIsMusicalSymbols() @@ -346,23 +361,40 @@ uCSIsOgham() uCSIsOldItalic() uCSIsOpticalCharacterRecognition() uCSIsOriya() +uCSIsOsmanya() +uCSIsPhoneticExtensions() uCSIsPrivateUse() +uCSIsPrivateUseArea() uCSIsRunic() +uCSIsShavian() uCSIsSinhala() uCSIsSmallFormVariants() uCSIsSpacingModifierLetters() uCSIsSpecials() uCSIsSuperscriptsandSubscripts() +uCSIsSupplementalArrowsA() +uCSIsSupplementalArrowsB() +uCSIsSupplementalMathematicalOperators() +uCSIsSupplementaryPrivateUseAreaA() +uCSIsSupplementaryPrivateUseAreaB() uCSIsSyriac() +uCSIsTagalog() +uCSIsTagbanwa() uCSIsTags() +uCSIsTaiLe() +uCSIsTaiXuanJingSymbols() uCSIsTamil() uCSIsTelugu() uCSIsThaana() uCSIsThai() uCSIsTibetan() +uCSIsUgaritic() uCSIsUnifiedCanadianAboriginalSyllabics() +uCSIsVariationSelectors() +uCSIsVariationSelectorsSupplement() uCSIsYiRadicals() uCSIsYiSyllables() +uCSIsYijingHexagramSymbols() # functions from module xmlversion checkVersion() diff --git a/win32/libxml2.def.src b/win32/libxml2.def.src index f69193ed..c688c20b 100644 --- a/win32/libxml2.def.src +++ b/win32/libxml2.def.src @@ -674,6 +674,7 @@ xmlCreateIntSubset xmlCreateMemoryParserCtxt xmlCreatePushParserCtxt xmlCreateURI +xmlCreateURLParserCtxt xmlCtxtGetLastError xmlCtxtReadDoc xmlCtxtReadFd @@ -682,6 +683,7 @@ xmlCtxtReadIO xmlCtxtReadMemory xmlCtxtReset xmlCtxtResetLastError +xmlCtxtResetPush xmlCtxtUseOptions xmlCurrentChar #ifdef LIBXML_DEBUG_ENABLED @@ -1477,6 +1479,9 @@ xmlSchemaGetPredefinedType xmlSchemaInitTypes #endif #ifdef LIBXML_SCHEMAS_ENABLED +xmlSchemaNewDocParserCtxt +#endif +#ifdef LIBXML_SCHEMAS_ENABLED xmlSchemaNewFacet #endif #ifdef LIBXML_SCHEMAS_ENABLED @@ -1580,6 +1585,7 @@ xmlStopParser xmlStrEqual xmlStrPrintf xmlStrQEqual +xmlStrVPrintf xmlStrcasecmp xmlStrcasestr xmlStrcat @@ -1747,6 +1753,9 @@ xmlThrDefSetStructuredErrorFunc xmlThrDefSubstituteEntitiesDefaultValue xmlThrDefTreeIndentString #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsAegeanNumbers +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsAlphabeticPresentationForms #endif #ifdef LIBXML_REGEXP_ENABLED @@ -1789,6 +1798,9 @@ xmlUCSIsBoxDrawing xmlUCSIsBraillePatterns #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsBuhid +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsByzantineMusicalSymbols #endif #ifdef LIBXML_REGEXP_ENABLED @@ -1936,6 +1948,9 @@ xmlUCSIsCherokee xmlUCSIsCombiningDiacriticalMarks #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsCombiningDiacriticalMarksforSymbols +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsCombiningHalfMarks #endif #ifdef LIBXML_REGEXP_ENABLED @@ -1948,9 +1963,15 @@ xmlUCSIsControlPictures xmlUCSIsCurrencySymbols #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsCypriotSyllabary +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsCyrillic #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsCyrillicSupplement +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsDeseret #endif #ifdef LIBXML_REGEXP_ENABLED @@ -1987,6 +2008,9 @@ xmlUCSIsGreek xmlUCSIsGreekExtended #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsGreekandCoptic +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsGujarati #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2005,6 +2029,9 @@ xmlUCSIsHangulJamo xmlUCSIsHangulSyllables #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsHanunoo +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsHebrew #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2035,9 +2062,15 @@ xmlUCSIsKannada xmlUCSIsKatakana #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsKatakanaPhoneticExtensions +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsKhmer #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsKhmerSymbols +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsLao #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2056,6 +2089,15 @@ xmlUCSIsLatinExtendedB xmlUCSIsLetterlikeSymbols #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsLimbu +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsLinearBIdeograms +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsLinearBSyllabary +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsLowSurrogates #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2068,9 +2110,18 @@ xmlUCSIsMathematicalAlphanumericSymbols xmlUCSIsMathematicalOperators #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsMiscellaneousMathematicalSymbolsA +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsMiscellaneousMathematicalSymbolsB +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsMiscellaneousSymbols #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsMiscellaneousSymbolsandArrows +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsMiscellaneousTechnical #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2098,12 +2149,24 @@ xmlUCSIsOpticalCharacterRecognition xmlUCSIsOriya #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsOsmanya +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsPhoneticExtensions +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsPrivateUse #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsPrivateUseArea +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsRunic #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsShavian +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsSinhala #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2119,12 +2182,39 @@ xmlUCSIsSpecials xmlUCSIsSuperscriptsandSubscripts #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsSupplementalArrowsA +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsSupplementalArrowsB +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsSupplementalMathematicalOperators +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsSupplementaryPrivateUseAreaA +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsSupplementaryPrivateUseAreaB +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsSyriac #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsTagalog +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsTagbanwa +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsTags #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsTaiLe +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsTaiXuanJingSymbols +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsTamil #endif #ifdef LIBXML_REGEXP_ENABLED @@ -2140,14 +2230,26 @@ xmlUCSIsThai xmlUCSIsTibetan #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsUgaritic +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsUnifiedCanadianAboriginalSyllabics #endif #ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsVariationSelectors +#endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsVariationSelectorsSupplement +#endif +#ifdef LIBXML_REGEXP_ENABLED xmlUCSIsYiRadicals #endif #ifdef LIBXML_REGEXP_ENABLED xmlUCSIsYiSyllables #endif +#ifdef LIBXML_REGEXP_ENABLED +xmlUCSIsYijingHexagramSymbols +#endif xmlURIEscape xmlURIEscapeStr xmlURIUnescapeString @@ -2196,9 +2298,18 @@ xmlValidatePushElement xmlValidateQName xmlValidateRoot #ifdef LIBXML_XINCLUDE_ENABLED +xmlXIncludeFreeContext +#endif +#ifdef LIBXML_XINCLUDE_ENABLED +xmlXIncludeNewContext +#endif +#ifdef LIBXML_XINCLUDE_ENABLED xmlXIncludeProcess #endif #ifdef LIBXML_XINCLUDE_ENABLED +xmlXIncludeProcessNode +#endif +#ifdef LIBXML_XINCLUDE_ENABLED xmlXIncludeProcessTree #endif #ifdef LIBXML_XPATH_ENABLED diff --git a/xmlunicode.c b/xmlunicode.c index 6829be5f..796edf22 100644 --- a/xmlunicode.c +++ b/xmlunicode.c @@ -3,11 +3,11 @@ * * This file is automatically generated from the * UCS description files of the Unicode Character Database - * http://www.unicode.org/Public/3.1-Update/UnicodeCharacterDatabase-3.1.0.html + * http://www.unicode.org/Public/4.0-Update1/UCD-4.0.1d5b.html * using the genUnicode.py Python script. * - * Generation date: Mon Aug 25 10:45:50 2003 - * Sources: Blocks-4.txt UnicodeData-3.1.0.txt + * Generation date: Sun Nov 9 20:13:11 2003 + * Sources: Blocks-4.0.1d1b.txt UnicodeData-4.0.1d1b.txt * Daniel Veillard <veillard@redhat.com> */ @@ -19,6 +19,957 @@ #include <string.h> #include <libxml/xmlversion.h> #include <libxml/xmlunicode.h> +#include <libxml/chvalid.h> + +typedef int (xmlIntFunc)(int); /* just to keep one's mind untwisted */ + +typedef struct { + const char *rangename; + xmlIntFunc *func; +} xmlUnicodeRange; + +typedef struct { + xmlUnicodeRange *table; + int numentries; +} xmlUnicodeNameTable; + + +static xmlIntFunc *xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname); + +static xmlUnicodeRange xmlUnicodeBlocks[] = { + {"AegeanNumbers", xmlUCSIsAegeanNumbers}, + {"AlphabeticPresentationForms", xmlUCSIsAlphabeticPresentationForms}, + {"Arabic", xmlUCSIsArabic}, + {"ArabicPresentationFormsA", xmlUCSIsArabicPresentationFormsA}, + {"ArabicPresentationFormsB", xmlUCSIsArabicPresentationFormsB}, + {"Armenian", xmlUCSIsArmenian}, + {"Arrows", xmlUCSIsArrows}, + {"BasicLatin", xmlUCSIsBasicLatin}, + {"Bengali", xmlUCSIsBengali}, + {"BlockElements", xmlUCSIsBlockElements}, + {"Bopomofo", xmlUCSIsBopomofo}, + {"BopomofoExtended", xmlUCSIsBopomofoExtended}, + {"BoxDrawing", xmlUCSIsBoxDrawing}, + {"BraillePatterns", xmlUCSIsBraillePatterns}, + {"Buhid", xmlUCSIsBuhid}, + {"ByzantineMusicalSymbols", xmlUCSIsByzantineMusicalSymbols}, + {"CJKCompatibility", xmlUCSIsCJKCompatibility}, + {"CJKCompatibilityForms", xmlUCSIsCJKCompatibilityForms}, + {"CJKCompatibilityIdeographs", xmlUCSIsCJKCompatibilityIdeographs}, + {"CJKCompatibilityIdeographsSupplement", xmlUCSIsCJKCompatibilityIdeographsSupplement}, + {"CJKRadicalsSupplement", xmlUCSIsCJKRadicalsSupplement}, + {"CJKSymbolsandPunctuation", xmlUCSIsCJKSymbolsandPunctuation}, + {"CJKUnifiedIdeographs", xmlUCSIsCJKUnifiedIdeographs}, + {"CJKUnifiedIdeographsExtensionA", xmlUCSIsCJKUnifiedIdeographsExtensionA}, + {"CJKUnifiedIdeographsExtensionB", xmlUCSIsCJKUnifiedIdeographsExtensionB}, + {"Cherokee", xmlUCSIsCherokee}, + {"CombiningDiacriticalMarks", xmlUCSIsCombiningDiacriticalMarks}, + {"CombiningDiacriticalMarksforSymbols", xmlUCSIsCombiningDiacriticalMarksforSymbols}, + {"CombiningHalfMarks", xmlUCSIsCombiningHalfMarks}, + {"CombiningMarksforSymbols", xmlUCSIsCombiningMarksforSymbols}, + {"ControlPictures", xmlUCSIsControlPictures}, + {"CurrencySymbols", xmlUCSIsCurrencySymbols}, + {"CypriotSyllabary", xmlUCSIsCypriotSyllabary}, + {"Cyrillic", xmlUCSIsCyrillic}, + {"CyrillicSupplement", xmlUCSIsCyrillicSupplement}, + {"Deseret", xmlUCSIsDeseret}, + {"Devanagari", xmlUCSIsDevanagari}, + {"Dingbats", xmlUCSIsDingbats}, + {"EnclosedAlphanumerics", xmlUCSIsEnclosedAlphanumerics}, + {"EnclosedCJKLettersandMonths", xmlUCSIsEnclosedCJKLettersandMonths}, + {"Ethiopic", xmlUCSIsEthiopic}, + {"GeneralPunctuation", xmlUCSIsGeneralPunctuation}, + {"GeometricShapes", xmlUCSIsGeometricShapes}, + {"Georgian", xmlUCSIsGeorgian}, + {"Gothic", xmlUCSIsGothic}, + {"Greek", xmlUCSIsGreek}, + {"GreekExtended", xmlUCSIsGreekExtended}, + {"GreekandCoptic", xmlUCSIsGreekandCoptic}, + {"Gujarati", xmlUCSIsGujarati}, + {"Gurmukhi", xmlUCSIsGurmukhi}, + {"HalfwidthandFullwidthForms", xmlUCSIsHalfwidthandFullwidthForms}, + {"HangulCompatibilityJamo", xmlUCSIsHangulCompatibilityJamo}, + {"HangulJamo", xmlUCSIsHangulJamo}, + {"HangulSyllables", xmlUCSIsHangulSyllables}, + {"Hanunoo", xmlUCSIsHanunoo}, + {"Hebrew", xmlUCSIsHebrew}, + {"HighPrivateUseSurrogates", xmlUCSIsHighPrivateUseSurrogates}, + {"HighSurrogates", xmlUCSIsHighSurrogates}, + {"Hiragana", xmlUCSIsHiragana}, + {"IPAExtensions", xmlUCSIsIPAExtensions}, + {"IdeographicDescriptionCharacters", xmlUCSIsIdeographicDescriptionCharacters}, + {"Kanbun", xmlUCSIsKanbun}, + {"KangxiRadicals", xmlUCSIsKangxiRadicals}, + {"Kannada", xmlUCSIsKannada}, + {"Katakana", xmlUCSIsKatakana}, + {"KatakanaPhoneticExtensions", xmlUCSIsKatakanaPhoneticExtensions}, + {"Khmer", xmlUCSIsKhmer}, + {"KhmerSymbols", xmlUCSIsKhmerSymbols}, + {"Lao", xmlUCSIsLao}, + {"Latin1Supplement", xmlUCSIsLatin1Supplement}, + {"LatinExtendedA", xmlUCSIsLatinExtendedA}, + {"LatinExtendedB", xmlUCSIsLatinExtendedB}, + {"LatinExtendedAdditional", xmlUCSIsLatinExtendedAdditional}, + {"LetterlikeSymbols", xmlUCSIsLetterlikeSymbols}, + {"Limbu", xmlUCSIsLimbu}, + {"LinearBIdeograms", xmlUCSIsLinearBIdeograms}, + {"LinearBSyllabary", xmlUCSIsLinearBSyllabary}, + {"LowSurrogates", xmlUCSIsLowSurrogates}, + {"Malayalam", xmlUCSIsMalayalam}, + {"MathematicalAlphanumericSymbols", xmlUCSIsMathematicalAlphanumericSymbols}, + {"MathematicalOperators", xmlUCSIsMathematicalOperators}, + {"MiscellaneousMathematicalSymbolsA", xmlUCSIsMiscellaneousMathematicalSymbolsA}, + {"MiscellaneousMathematicalSymbolsB", xmlUCSIsMiscellaneousMathematicalSymbolsB}, + {"MiscellaneousSymbols", xmlUCSIsMiscellaneousSymbols}, + {"MiscellaneousSymbolsandArrows", xmlUCSIsMiscellaneousSymbolsandArrows}, + {"MiscellaneousTechnical", xmlUCSIsMiscellaneousTechnical}, + {"Mongolian", xmlUCSIsMongolian}, + {"MusicalSymbols", xmlUCSIsMusicalSymbols}, + {"Myanmar", xmlUCSIsMyanmar}, + {"NumberForms", xmlUCSIsNumberForms}, + {"Ogham", xmlUCSIsOgham}, + {"OldItalic", xmlUCSIsOldItalic}, + {"OpticalCharacterRecognition", xmlUCSIsOpticalCharacterRecognition}, + {"Oriya", xmlUCSIsOriya}, + {"Osmanya", xmlUCSIsOsmanya}, + {"PhoneticExtensions", xmlUCSIsPhoneticExtensions}, + {"PrivateUse", xmlUCSIsPrivateUse}, + {"PrivateUseArea", xmlUCSIsPrivateUseArea}, + {"Runic", xmlUCSIsRunic}, + {"Shavian", xmlUCSIsShavian}, + {"Sinhala", xmlUCSIsSinhala}, + {"SmallFormVariants", xmlUCSIsSmallFormVariants}, + {"SpacingModifierLetters", xmlUCSIsSpacingModifierLetters}, + {"Specials", xmlUCSIsSpecials}, + {"SuperscriptsandSubscripts", xmlUCSIsSuperscriptsandSubscripts}, + {"SupplementalArrowsA", xmlUCSIsSupplementalArrowsA}, + {"SupplementalArrowsB", xmlUCSIsSupplementalArrowsB}, + {"SupplementalMathematicalOperators", xmlUCSIsSupplementalMathematicalOperators}, + {"SupplementaryPrivateUseAreaA", xmlUCSIsSupplementaryPrivateUseAreaA}, + {"SupplementaryPrivateUseAreaB", xmlUCSIsSupplementaryPrivateUseAreaB}, + {"Syriac", xmlUCSIsSyriac}, + {"Tagalog", xmlUCSIsTagalog}, + {"Tagbanwa", xmlUCSIsTagbanwa}, + {"Tags", xmlUCSIsTags}, + {"TaiLe", xmlUCSIsTaiLe}, + {"TaiXuanJingSymbols", xmlUCSIsTaiXuanJingSymbols}, + {"Tamil", xmlUCSIsTamil}, + {"Telugu", xmlUCSIsTelugu}, + {"Thaana", xmlUCSIsThaana}, + {"Thai", xmlUCSIsThai}, + {"Tibetan", xmlUCSIsTibetan}, + {"Ugaritic", xmlUCSIsUgaritic}, + {"UnifiedCanadianAboriginalSyllabics", xmlUCSIsUnifiedCanadianAboriginalSyllabics}, + {"VariationSelectors", xmlUCSIsVariationSelectors}, + {"VariationSelectorsSupplement", xmlUCSIsVariationSelectorsSupplement}, + {"YiRadicals", xmlUCSIsYiRadicals}, + {"YiSyllables", xmlUCSIsYiSyllables}, + {"YijingHexagramSymbols", xmlUCSIsYijingHexagramSymbols}}; + +static xmlUnicodeRange xmlUnicodeCats[] = { + {"C", xmlUCSIsCatC}, + {"Cc", xmlUCSIsCatCc}, + {"Cf", xmlUCSIsCatCf}, + {"Co", xmlUCSIsCatCo}, + {"Cs", xmlUCSIsCatCs}, + {"L", xmlUCSIsCatL}, + {"Ll", xmlUCSIsCatLl}, + {"Lm", xmlUCSIsCatLm}, + {"Lo", xmlUCSIsCatLo}, + {"Lt", xmlUCSIsCatLt}, + {"Lu", xmlUCSIsCatLu}, + {"M", xmlUCSIsCatM}, + {"Mc", xmlUCSIsCatMc}, + {"Me", xmlUCSIsCatMe}, + {"Mn", xmlUCSIsCatMn}, + {"N", xmlUCSIsCatN}, + {"Nd", xmlUCSIsCatNd}, + {"Nl", xmlUCSIsCatNl}, + {"No", xmlUCSIsCatNo}, + {"P", xmlUCSIsCatP}, + {"Pc", xmlUCSIsCatPc}, + {"Pd", xmlUCSIsCatPd}, + {"Pe", xmlUCSIsCatPe}, + {"Pf", xmlUCSIsCatPf}, + {"Pi", xmlUCSIsCatPi}, + {"Po", xmlUCSIsCatPo}, + {"Ps", xmlUCSIsCatPs}, + {"S", xmlUCSIsCatS}, + {"Sc", xmlUCSIsCatSc}, + {"Sk", xmlUCSIsCatSk}, + {"Sm", xmlUCSIsCatSm}, + {"So", xmlUCSIsCatSo}, + {"Z", xmlUCSIsCatZ}, + {"Zl", xmlUCSIsCatZl}, + {"Zp", xmlUCSIsCatZp}, + {"Zs", xmlUCSIsCatZs}}; + +static xmlChSRange xmlCS[] = {{0x0, 0x1f}, {0x7f, 0x9f}, {0xad, 0xad}, + {0x600, 0x603}, {0x6dd, 0x6dd}, {0x70f, 0x70f}, {0x17b4, 0x17b5}, + {0x200c, 0x200f}, {0x202a, 0x202e}, {0x2060, 0x2063}, {0x206a, 0x206f}, + {0xd800, 0xd800}, {0xdb7f, 0xdb80}, {0xdbff, 0xdc00}, {0xdfff, 0xe000}, + {0xf8ff, 0xf8ff}, {0xfeff, 0xfeff}, {0xfff9, 0xfffb} }; +static xmlChLRange xmlCL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001}, + {0xe0020, 0xe007f}, {0xf0000, 0xf0000}, {0xffffd, 0xffffd}, + {0x100000, 0x100000}, {0x10fffd, 0x10fffd} }; +static xmlChRangeGroup xmlCG = {18,7,xmlCS,xmlCL}; + +static xmlChSRange xmlCfS[] = {{0xad, 0xad}, {0x600, 0x603}, + {0x6dd, 0x6dd}, {0x70f, 0x70f}, {0x17b4, 0x17b5}, {0x200c, 0x200f}, + {0x202a, 0x202e}, {0x2060, 0x2063}, {0x206a, 0x206f}, {0xfeff, 0xfeff}, + {0xfff9, 0xfffb} }; +static xmlChLRange xmlCfL[] = {{0x1d173, 0x1d17a}, {0xe0001, 0xe0001}, + {0xe0020, 0xe007f} }; +static xmlChRangeGroup xmlCfG = {11,3,xmlCfS,xmlCfL}; + +static xmlChSRange xmlLS[] = {{0x41, 0x5a}, {0x61, 0x7a}, {0xaa, 0xaa}, + {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x236}, + {0x250, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ee, 0x2ee}, + {0x37a, 0x37a}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, + {0x38e, 0x3a1}, {0x3a3, 0x3ce}, {0x3d0, 0x3f5}, {0x3f7, 0x3fb}, + {0x400, 0x481}, {0x48a, 0x4ce}, {0x4d0, 0x4f5}, {0x4f8, 0x4f9}, + {0x500, 0x50f}, {0x531, 0x556}, {0x559, 0x559}, {0x561, 0x587}, + {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a}, {0x640, 0x64a}, + {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, + {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, + {0x712, 0x72f}, {0x74d, 0x74f}, {0x780, 0x7a5}, {0x7b1, 0x7b1}, + {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, + {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, + {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9dc, 0x9dd}, + {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, + {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, + {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, + {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, + {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, + {0xae0, 0xae1}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, + {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, + {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, + {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, + {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, + {0xbae, 0xbb5}, {0xbb7, 0xbb9}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, + {0xc12, 0xc28}, {0xc2a, 0xc33}, {0xc35, 0xc39}, {0xc60, 0xc61}, + {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, + {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcde, 0xcde}, {0xce0, 0xce1}, + {0xd05, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd28}, {0xd2a, 0xd39}, + {0xd60, 0xd61}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, + {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, + {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe87, 0xe88}, + {0xe8a, 0xe8a}, {0xe8d, 0xe8d}, {0xe94, 0xe97}, {0xe99, 0xe9f}, + {0xea1, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xea7}, {0xeaa, 0xeab}, + {0xead, 0xeb0}, {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, + {0xec6, 0xec6}, {0xedc, 0xedd}, {0xf00, 0xf00}, {0xf40, 0xf47}, + {0xf49, 0xf6a}, {0xf88, 0xf8b}, {0x1000, 0x1021}, {0x1023, 0x1027}, + {0x1029, 0x102a}, {0x1050, 0x1055}, {0x10a0, 0x10c5}, {0x10d0, 0x10f8}, + {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9}, {0x1200, 0x1206}, + {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, + {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286}, {0x1288, 0x1288}, + {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0}, {0x12b2, 0x12b5}, + {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12ce}, + {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e}, {0x1310, 0x1310}, + {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346}, {0x1348, 0x135a}, + {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676}, {0x1681, 0x169a}, + {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, + {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, + {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1877}, {0x1880, 0x18a8}, + {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1d00, 0x1d6b}, + {0x1e00, 0x1e9b}, {0x1ea0, 0x1ef9}, {0x1f00, 0x1f15}, {0x1f18, 0x1f1d}, + {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, + {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, + {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, + {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, + {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2102, 0x2102}, + {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2119, 0x211d}, + {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x212d}, + {0x212f, 0x2131}, {0x2133, 0x2139}, {0x213d, 0x213f}, {0x2145, 0x2149}, + {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c}, {0x3041, 0x3096}, + {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312c}, + {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff}, {0x3400, 0x3400}, + {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5}, {0xa000, 0xa48c}, + {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d}, {0xfa30, 0xfa6a}, + {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, + {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, + {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, + {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, + {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, + {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc} }; +static xmlChLRange xmlLL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026}, + {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e}, + {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10400, 0x1049d}, + {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, + {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f}, + {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, + {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, + {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, + {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, + {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, + {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, + {0x1d552, 0x1d6a3}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, + {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, + {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, + {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, + {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} }; +static xmlChRangeGroup xmlLG = {279,50,xmlLS,xmlLL}; + +static xmlChSRange xmlLlS[] = {{0x61, 0x7a}, {0xaa, 0xaa}, {0xb5, 0xb5}, + {0xba, 0xba}, {0xdf, 0xf6}, {0xf8, 0xff}, {0x101, 0x101}, + {0x103, 0x103}, {0x105, 0x105}, {0x107, 0x107}, {0x109, 0x109}, + {0x10b, 0x10b}, {0x10d, 0x10d}, {0x10f, 0x10f}, {0x111, 0x111}, + {0x113, 0x113}, {0x115, 0x115}, {0x117, 0x117}, {0x119, 0x119}, + {0x11b, 0x11b}, {0x11d, 0x11d}, {0x11f, 0x11f}, {0x121, 0x121}, + {0x123, 0x123}, {0x125, 0x125}, {0x127, 0x127}, {0x129, 0x129}, + {0x12b, 0x12b}, {0x12d, 0x12d}, {0x12f, 0x12f}, {0x131, 0x131}, + {0x133, 0x133}, {0x135, 0x135}, {0x137, 0x138}, {0x13a, 0x13a}, + {0x13c, 0x13c}, {0x13e, 0x13e}, {0x140, 0x140}, {0x142, 0x142}, + {0x144, 0x144}, {0x146, 0x146}, {0x148, 0x149}, {0x14b, 0x14b}, + {0x14d, 0x14d}, {0x14f, 0x14f}, {0x151, 0x151}, {0x153, 0x153}, + {0x155, 0x155}, {0x157, 0x157}, {0x159, 0x159}, {0x15b, 0x15b}, + {0x15d, 0x15d}, {0x15f, 0x15f}, {0x161, 0x161}, {0x163, 0x163}, + {0x165, 0x165}, {0x167, 0x167}, {0x169, 0x169}, {0x16b, 0x16b}, + {0x16d, 0x16d}, {0x16f, 0x16f}, {0x171, 0x171}, {0x173, 0x173}, + {0x175, 0x175}, {0x177, 0x177}, {0x17a, 0x17a}, {0x17c, 0x17c}, + {0x17e, 0x180}, {0x183, 0x183}, {0x185, 0x185}, {0x188, 0x188}, + {0x18c, 0x18d}, {0x192, 0x192}, {0x195, 0x195}, {0x199, 0x19b}, + {0x19e, 0x19e}, {0x1a1, 0x1a1}, {0x1a3, 0x1a3}, {0x1a5, 0x1a5}, + {0x1a8, 0x1a8}, {0x1aa, 0x1ab}, {0x1ad, 0x1ad}, {0x1b0, 0x1b0}, + {0x1b4, 0x1b4}, {0x1b6, 0x1b6}, {0x1b9, 0x1ba}, {0x1bd, 0x1bf}, + {0x1c6, 0x1c6}, {0x1c9, 0x1c9}, {0x1cc, 0x1cc}, {0x1ce, 0x1ce}, + {0x1d0, 0x1d0}, {0x1d2, 0x1d2}, {0x1d4, 0x1d4}, {0x1d6, 0x1d6}, + {0x1d8, 0x1d8}, {0x1da, 0x1da}, {0x1dc, 0x1dd}, {0x1df, 0x1df}, + {0x1e1, 0x1e1}, {0x1e3, 0x1e3}, {0x1e5, 0x1e5}, {0x1e7, 0x1e7}, + {0x1e9, 0x1e9}, {0x1eb, 0x1eb}, {0x1ed, 0x1ed}, {0x1ef, 0x1f0}, + {0x1f3, 0x1f3}, {0x1f5, 0x1f5}, {0x1f9, 0x1f9}, {0x1fb, 0x1fb}, + {0x1fd, 0x1fd}, {0x1ff, 0x1ff}, {0x201, 0x201}, {0x203, 0x203}, + {0x205, 0x205}, {0x207, 0x207}, {0x209, 0x209}, {0x20b, 0x20b}, + {0x20d, 0x20d}, {0x20f, 0x20f}, {0x211, 0x211}, {0x213, 0x213}, + {0x215, 0x215}, {0x217, 0x217}, {0x219, 0x219}, {0x21b, 0x21b}, + {0x21d, 0x21d}, {0x21f, 0x21f}, {0x221, 0x221}, {0x223, 0x223}, + {0x225, 0x225}, {0x227, 0x227}, {0x229, 0x229}, {0x22b, 0x22b}, + {0x22d, 0x22d}, {0x22f, 0x22f}, {0x231, 0x231}, {0x233, 0x236}, + {0x250, 0x2af}, {0x390, 0x390}, {0x3ac, 0x3ce}, {0x3d0, 0x3d1}, + {0x3d5, 0x3d7}, {0x3d9, 0x3d9}, {0x3db, 0x3db}, {0x3dd, 0x3dd}, + {0x3df, 0x3df}, {0x3e1, 0x3e1}, {0x3e3, 0x3e3}, {0x3e5, 0x3e5}, + {0x3e7, 0x3e7}, {0x3e9, 0x3e9}, {0x3eb, 0x3eb}, {0x3ed, 0x3ed}, + {0x3ef, 0x3f3}, {0x3f5, 0x3f5}, {0x3f8, 0x3f8}, {0x3fb, 0x3fb}, + {0x430, 0x45f}, {0x461, 0x461}, {0x463, 0x463}, {0x465, 0x465}, + {0x467, 0x467}, {0x469, 0x469}, {0x46b, 0x46b}, {0x46d, 0x46d}, + {0x46f, 0x46f}, {0x471, 0x471}, {0x473, 0x473}, {0x475, 0x475}, + {0x477, 0x477}, {0x479, 0x479}, {0x47b, 0x47b}, {0x47d, 0x47d}, + {0x47f, 0x47f}, {0x481, 0x481}, {0x48b, 0x48b}, {0x48d, 0x48d}, + {0x48f, 0x48f}, {0x491, 0x491}, {0x493, 0x493}, {0x495, 0x495}, + {0x497, 0x497}, {0x499, 0x499}, {0x49b, 0x49b}, {0x49d, 0x49d}, + {0x49f, 0x49f}, {0x4a1, 0x4a1}, {0x4a3, 0x4a3}, {0x4a5, 0x4a5}, + {0x4a7, 0x4a7}, {0x4a9, 0x4a9}, {0x4ab, 0x4ab}, {0x4ad, 0x4ad}, + {0x4af, 0x4af}, {0x4b1, 0x4b1}, {0x4b3, 0x4b3}, {0x4b5, 0x4b5}, + {0x4b7, 0x4b7}, {0x4b9, 0x4b9}, {0x4bb, 0x4bb}, {0x4bd, 0x4bd}, + {0x4bf, 0x4bf}, {0x4c2, 0x4c2}, {0x4c4, 0x4c4}, {0x4c6, 0x4c6}, + {0x4c8, 0x4c8}, {0x4ca, 0x4ca}, {0x4cc, 0x4cc}, {0x4ce, 0x4ce}, + {0x4d1, 0x4d1}, {0x4d3, 0x4d3}, {0x4d5, 0x4d5}, {0x4d7, 0x4d7}, + {0x4d9, 0x4d9}, {0x4db, 0x4db}, {0x4dd, 0x4dd}, {0x4df, 0x4df}, + {0x4e1, 0x4e1}, {0x4e3, 0x4e3}, {0x4e5, 0x4e5}, {0x4e7, 0x4e7}, + {0x4e9, 0x4e9}, {0x4eb, 0x4eb}, {0x4ed, 0x4ed}, {0x4ef, 0x4ef}, + {0x4f1, 0x4f1}, {0x4f3, 0x4f3}, {0x4f5, 0x4f5}, {0x4f9, 0x4f9}, + {0x501, 0x501}, {0x503, 0x503}, {0x505, 0x505}, {0x507, 0x507}, + {0x509, 0x509}, {0x50b, 0x50b}, {0x50d, 0x50d}, {0x50f, 0x50f}, + {0x561, 0x587}, {0x1d00, 0x1d2b}, {0x1d62, 0x1d6b}, {0x1e01, 0x1e01}, + {0x1e03, 0x1e03}, {0x1e05, 0x1e05}, {0x1e07, 0x1e07}, {0x1e09, 0x1e09}, + {0x1e0b, 0x1e0b}, {0x1e0d, 0x1e0d}, {0x1e0f, 0x1e0f}, {0x1e11, 0x1e11}, + {0x1e13, 0x1e13}, {0x1e15, 0x1e15}, {0x1e17, 0x1e17}, {0x1e19, 0x1e19}, + {0x1e1b, 0x1e1b}, {0x1e1d, 0x1e1d}, {0x1e1f, 0x1e1f}, {0x1e21, 0x1e21}, + {0x1e23, 0x1e23}, {0x1e25, 0x1e25}, {0x1e27, 0x1e27}, {0x1e29, 0x1e29}, + {0x1e2b, 0x1e2b}, {0x1e2d, 0x1e2d}, {0x1e2f, 0x1e2f}, {0x1e31, 0x1e31}, + {0x1e33, 0x1e33}, {0x1e35, 0x1e35}, {0x1e37, 0x1e37}, {0x1e39, 0x1e39}, + {0x1e3b, 0x1e3b}, {0x1e3d, 0x1e3d}, {0x1e3f, 0x1e3f}, {0x1e41, 0x1e41}, + {0x1e43, 0x1e43}, {0x1e45, 0x1e45}, {0x1e47, 0x1e47}, {0x1e49, 0x1e49}, + {0x1e4b, 0x1e4b}, {0x1e4d, 0x1e4d}, {0x1e4f, 0x1e4f}, {0x1e51, 0x1e51}, + {0x1e53, 0x1e53}, {0x1e55, 0x1e55}, {0x1e57, 0x1e57}, {0x1e59, 0x1e59}, + {0x1e5b, 0x1e5b}, {0x1e5d, 0x1e5d}, {0x1e5f, 0x1e5f}, {0x1e61, 0x1e61}, + {0x1e63, 0x1e63}, {0x1e65, 0x1e65}, {0x1e67, 0x1e67}, {0x1e69, 0x1e69}, + {0x1e6b, 0x1e6b}, {0x1e6d, 0x1e6d}, {0x1e6f, 0x1e6f}, {0x1e71, 0x1e71}, + {0x1e73, 0x1e73}, {0x1e75, 0x1e75}, {0x1e77, 0x1e77}, {0x1e79, 0x1e79}, + {0x1e7b, 0x1e7b}, {0x1e7d, 0x1e7d}, {0x1e7f, 0x1e7f}, {0x1e81, 0x1e81}, + {0x1e83, 0x1e83}, {0x1e85, 0x1e85}, {0x1e87, 0x1e87}, {0x1e89, 0x1e89}, + {0x1e8b, 0x1e8b}, {0x1e8d, 0x1e8d}, {0x1e8f, 0x1e8f}, {0x1e91, 0x1e91}, + {0x1e93, 0x1e93}, {0x1e95, 0x1e9b}, {0x1ea1, 0x1ea1}, {0x1ea3, 0x1ea3}, + {0x1ea5, 0x1ea5}, {0x1ea7, 0x1ea7}, {0x1ea9, 0x1ea9}, {0x1eab, 0x1eab}, + {0x1ead, 0x1ead}, {0x1eaf, 0x1eaf}, {0x1eb1, 0x1eb1}, {0x1eb3, 0x1eb3}, + {0x1eb5, 0x1eb5}, {0x1eb7, 0x1eb7}, {0x1eb9, 0x1eb9}, {0x1ebb, 0x1ebb}, + {0x1ebd, 0x1ebd}, {0x1ebf, 0x1ebf}, {0x1ec1, 0x1ec1}, {0x1ec3, 0x1ec3}, + {0x1ec5, 0x1ec5}, {0x1ec7, 0x1ec7}, {0x1ec9, 0x1ec9}, {0x1ecb, 0x1ecb}, + {0x1ecd, 0x1ecd}, {0x1ecf, 0x1ecf}, {0x1ed1, 0x1ed1}, {0x1ed3, 0x1ed3}, + {0x1ed5, 0x1ed5}, {0x1ed7, 0x1ed7}, {0x1ed9, 0x1ed9}, {0x1edb, 0x1edb}, + {0x1edd, 0x1edd}, {0x1edf, 0x1edf}, {0x1ee1, 0x1ee1}, {0x1ee3, 0x1ee3}, + {0x1ee5, 0x1ee5}, {0x1ee7, 0x1ee7}, {0x1ee9, 0x1ee9}, {0x1eeb, 0x1eeb}, + {0x1eed, 0x1eed}, {0x1eef, 0x1eef}, {0x1ef1, 0x1ef1}, {0x1ef3, 0x1ef3}, + {0x1ef5, 0x1ef5}, {0x1ef7, 0x1ef7}, {0x1ef9, 0x1ef9}, {0x1f00, 0x1f07}, + {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, + {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, + {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, + {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, + {0x2071, 0x2071}, {0x207f, 0x207f}, {0x210a, 0x210a}, {0x210e, 0x210f}, + {0x2113, 0x2113}, {0x212f, 0x212f}, {0x2134, 0x2134}, {0x2139, 0x2139}, + {0x213d, 0x213d}, {0x2146, 0x2149}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, + {0xff41, 0xff5a} }; +static xmlChLRange xmlLlL[] = {{0x10428, 0x1044f}, {0x1d41a, 0x1d433}, + {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b}, + {0x1d4b6, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, + {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537}, + {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3}, + {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, + {0x1d68a, 0x1d6a3}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, + {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e}, + {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f}, + {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9} }; +static xmlChRangeGroup xmlLlG = {396,28,xmlLlS,xmlLlL}; + +static xmlChSRange xmlLmS[] = {{0x2b0, 0x2c1}, {0x2c6, 0x2d1}, + {0x2e0, 0x2e4}, {0x2ee, 0x2ee}, {0x37a, 0x37a}, {0x559, 0x559}, + {0x640, 0x640}, {0x6e5, 0x6e6}, {0xe46, 0xe46}, {0xec6, 0xec6}, + {0x17d7, 0x17d7}, {0x1843, 0x1843}, {0x1d2c, 0x1d61}, {0x3005, 0x3005}, + {0x3031, 0x3035}, {0x303b, 0x303b}, {0x309d, 0x309e}, {0x30fc, 0x30fe}, + {0xff70, 0xff70}, {0xff9e, 0xff9f} }; +static xmlChRangeGroup xmlLmG = {20,0,xmlLmS,NULL}; + +static xmlChSRange xmlLoS[] = {{0x1bb, 0x1bb}, {0x1c0, 0x1c3}, + {0x5d0, 0x5ea}, {0x5f0, 0x5f2}, {0x621, 0x63a}, {0x641, 0x64a}, + {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6ee, 0x6ef}, + {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, + {0x74d, 0x74f}, {0x780, 0x7a5}, {0x7b1, 0x7b1}, {0x904, 0x939}, + {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x985, 0x98c}, + {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, + {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, + {0x9f0, 0x9f1}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, + {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, + {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, + {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, + {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, + {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, + {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, + {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, + {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, + {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb5}, + {0xbb7, 0xbb9}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, + {0xc2a, 0xc33}, {0xc35, 0xc39}, {0xc60, 0xc61}, {0xc85, 0xc8c}, + {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, + {0xcbd, 0xcbd}, {0xcde, 0xcde}, {0xce0, 0xce1}, {0xd05, 0xd0c}, + {0xd0e, 0xd10}, {0xd12, 0xd28}, {0xd2a, 0xd39}, {0xd60, 0xd61}, + {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, + {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe33}, {0xe40, 0xe45}, + {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe87, 0xe88}, {0xe8a, 0xe8a}, + {0xe8d, 0xe8d}, {0xe94, 0xe97}, {0xe99, 0xe9f}, {0xea1, 0xea3}, + {0xea5, 0xea5}, {0xea7, 0xea7}, {0xeaa, 0xeab}, {0xead, 0xeb0}, + {0xeb2, 0xeb3}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xedc, 0xedd}, + {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6a}, {0xf88, 0xf8b}, + {0x1000, 0x1021}, {0x1023, 0x1027}, {0x1029, 0x102a}, {0x1050, 0x1055}, + {0x10d0, 0x10f8}, {0x1100, 0x1159}, {0x115f, 0x11a2}, {0x11a8, 0x11f9}, + {0x1200, 0x1206}, {0x1208, 0x1246}, {0x1248, 0x1248}, {0x124a, 0x124d}, + {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1286}, + {0x1288, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12ae}, {0x12b0, 0x12b0}, + {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, + {0x12c8, 0x12ce}, {0x12d0, 0x12d6}, {0x12d8, 0x12ee}, {0x12f0, 0x130e}, + {0x1310, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x131e}, {0x1320, 0x1346}, + {0x1348, 0x135a}, {0x13a0, 0x13f4}, {0x1401, 0x166c}, {0x166f, 0x1676}, + {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x1700, 0x170c}, {0x170e, 0x1711}, + {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, + {0x1780, 0x17b3}, {0x17dc, 0x17dc}, {0x1820, 0x1842}, {0x1844, 0x1877}, + {0x1880, 0x18a8}, {0x1900, 0x191c}, {0x1950, 0x196d}, {0x1970, 0x1974}, + {0x2135, 0x2138}, {0x3006, 0x3006}, {0x303c, 0x303c}, {0x3041, 0x3096}, + {0x309f, 0x309f}, {0x30a1, 0x30fa}, {0x30ff, 0x30ff}, {0x3105, 0x312c}, + {0x3131, 0x318e}, {0x31a0, 0x31b7}, {0x31f0, 0x31ff}, {0x3400, 0x3400}, + {0x4db5, 0x4db5}, {0x4e00, 0x4e00}, {0x9fa5, 0x9fa5}, {0xa000, 0xa48c}, + {0xac00, 0xac00}, {0xd7a3, 0xd7a3}, {0xf900, 0xfa2d}, {0xfa30, 0xfa6a}, + {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, + {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, + {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, + {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff66, 0xff6f}, {0xff71, 0xff9d}, + {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, + {0xffda, 0xffdc} }; +static xmlChLRange xmlLoL[] = {{0x10000, 0x1000b}, {0x1000d, 0x10026}, + {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10300, 0x1031e}, + {0x10330, 0x10349}, {0x10380, 0x1039d}, {0x10450, 0x1049d}, + {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, + {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x1083f}, + {0x20000, 0x20000}, {0x2a6d6, 0x2a6d6}, {0x2f800, 0x2fa1d} }; +static xmlChRangeGroup xmlLoG = {211,20,xmlLoS,xmlLoL}; + +static xmlChSRange xmlLtS[] = {{0x1c5, 0x1c5}, {0x1c8, 0x1c8}, + {0x1cb, 0x1cb}, {0x1f2, 0x1f2}, {0x1f88, 0x1f8f}, {0x1f98, 0x1f9f}, + {0x1fa8, 0x1faf}, {0x1fbc, 0x1fbc}, {0x1fcc, 0x1fcc}, {0x1ffc, 0x1ffc} }; +static xmlChRangeGroup xmlLtG = {10,0,xmlLtS,NULL}; + +static xmlChSRange xmlLuS[] = {{0x41, 0x5a}, {0xc0, 0xd6}, {0xd8, 0xde}, + {0x100, 0x100}, {0x102, 0x102}, {0x104, 0x104}, {0x106, 0x106}, + {0x108, 0x108}, {0x10a, 0x10a}, {0x10c, 0x10c}, {0x10e, 0x10e}, + {0x110, 0x110}, {0x112, 0x112}, {0x114, 0x114}, {0x116, 0x116}, + {0x118, 0x118}, {0x11a, 0x11a}, {0x11c, 0x11c}, {0x11e, 0x11e}, + {0x120, 0x120}, {0x122, 0x122}, {0x124, 0x124}, {0x126, 0x126}, + {0x128, 0x128}, {0x12a, 0x12a}, {0x12c, 0x12c}, {0x12e, 0x12e}, + {0x130, 0x130}, {0x132, 0x132}, {0x134, 0x134}, {0x136, 0x136}, + {0x139, 0x139}, {0x13b, 0x13b}, {0x13d, 0x13d}, {0x13f, 0x13f}, + {0x141, 0x141}, {0x143, 0x143}, {0x145, 0x145}, {0x147, 0x147}, + {0x14a, 0x14a}, {0x14c, 0x14c}, {0x14e, 0x14e}, {0x150, 0x150}, + {0x152, 0x152}, {0x154, 0x154}, {0x156, 0x156}, {0x158, 0x158}, + {0x15a, 0x15a}, {0x15c, 0x15c}, {0x15e, 0x15e}, {0x160, 0x160}, + {0x162, 0x162}, {0x164, 0x164}, {0x166, 0x166}, {0x168, 0x168}, + {0x16a, 0x16a}, {0x16c, 0x16c}, {0x16e, 0x16e}, {0x170, 0x170}, + {0x172, 0x172}, {0x174, 0x174}, {0x176, 0x176}, {0x178, 0x179}, + {0x17b, 0x17b}, {0x17d, 0x17d}, {0x181, 0x182}, {0x184, 0x184}, + {0x186, 0x187}, {0x189, 0x18b}, {0x18e, 0x191}, {0x193, 0x194}, + {0x196, 0x198}, {0x19c, 0x19d}, {0x19f, 0x1a0}, {0x1a2, 0x1a2}, + {0x1a4, 0x1a4}, {0x1a6, 0x1a7}, {0x1a9, 0x1a9}, {0x1ac, 0x1ac}, + {0x1ae, 0x1af}, {0x1b1, 0x1b3}, {0x1b5, 0x1b5}, {0x1b7, 0x1b8}, + {0x1bc, 0x1bc}, {0x1c4, 0x1c4}, {0x1c7, 0x1c7}, {0x1ca, 0x1ca}, + {0x1cd, 0x1cd}, {0x1cf, 0x1cf}, {0x1d1, 0x1d1}, {0x1d3, 0x1d3}, + {0x1d5, 0x1d5}, {0x1d7, 0x1d7}, {0x1d9, 0x1d9}, {0x1db, 0x1db}, + {0x1de, 0x1de}, {0x1e0, 0x1e0}, {0x1e2, 0x1e2}, {0x1e4, 0x1e4}, + {0x1e6, 0x1e6}, {0x1e8, 0x1e8}, {0x1ea, 0x1ea}, {0x1ec, 0x1ec}, + {0x1ee, 0x1ee}, {0x1f1, 0x1f1}, {0x1f4, 0x1f4}, {0x1f6, 0x1f8}, + {0x1fa, 0x1fa}, {0x1fc, 0x1fc}, {0x1fe, 0x1fe}, {0x200, 0x200}, + {0x202, 0x202}, {0x204, 0x204}, {0x206, 0x206}, {0x208, 0x208}, + {0x20a, 0x20a}, {0x20c, 0x20c}, {0x20e, 0x20e}, {0x210, 0x210}, + {0x212, 0x212}, {0x214, 0x214}, {0x216, 0x216}, {0x218, 0x218}, + {0x21a, 0x21a}, {0x21c, 0x21c}, {0x21e, 0x21e}, {0x220, 0x220}, + {0x222, 0x222}, {0x224, 0x224}, {0x226, 0x226}, {0x228, 0x228}, + {0x22a, 0x22a}, {0x22c, 0x22c}, {0x22e, 0x22e}, {0x230, 0x230}, + {0x232, 0x232}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, + {0x38e, 0x38f}, {0x391, 0x3a1}, {0x3a3, 0x3ab}, {0x3d2, 0x3d4}, + {0x3d8, 0x3d8}, {0x3da, 0x3da}, {0x3dc, 0x3dc}, {0x3de, 0x3de}, + {0x3e0, 0x3e0}, {0x3e2, 0x3e2}, {0x3e4, 0x3e4}, {0x3e6, 0x3e6}, + {0x3e8, 0x3e8}, {0x3ea, 0x3ea}, {0x3ec, 0x3ec}, {0x3ee, 0x3ee}, + {0x3f4, 0x3f4}, {0x3f7, 0x3f7}, {0x3f9, 0x3fa}, {0x400, 0x42f}, + {0x460, 0x460}, {0x462, 0x462}, {0x464, 0x464}, {0x466, 0x466}, + {0x468, 0x468}, {0x46a, 0x46a}, {0x46c, 0x46c}, {0x46e, 0x46e}, + {0x470, 0x470}, {0x472, 0x472}, {0x474, 0x474}, {0x476, 0x476}, + {0x478, 0x478}, {0x47a, 0x47a}, {0x47c, 0x47c}, {0x47e, 0x47e}, + {0x480, 0x480}, {0x48a, 0x48a}, {0x48c, 0x48c}, {0x48e, 0x48e}, + {0x490, 0x490}, {0x492, 0x492}, {0x494, 0x494}, {0x496, 0x496}, + {0x498, 0x498}, {0x49a, 0x49a}, {0x49c, 0x49c}, {0x49e, 0x49e}, + {0x4a0, 0x4a0}, {0x4a2, 0x4a2}, {0x4a4, 0x4a4}, {0x4a6, 0x4a6}, + {0x4a8, 0x4a8}, {0x4aa, 0x4aa}, {0x4ac, 0x4ac}, {0x4ae, 0x4ae}, + {0x4b0, 0x4b0}, {0x4b2, 0x4b2}, {0x4b4, 0x4b4}, {0x4b6, 0x4b6}, + {0x4b8, 0x4b8}, {0x4ba, 0x4ba}, {0x4bc, 0x4bc}, {0x4be, 0x4be}, + {0x4c0, 0x4c1}, {0x4c3, 0x4c3}, {0x4c5, 0x4c5}, {0x4c7, 0x4c7}, + {0x4c9, 0x4c9}, {0x4cb, 0x4cb}, {0x4cd, 0x4cd}, {0x4d0, 0x4d0}, + {0x4d2, 0x4d2}, {0x4d4, 0x4d4}, {0x4d6, 0x4d6}, {0x4d8, 0x4d8}, + {0x4da, 0x4da}, {0x4dc, 0x4dc}, {0x4de, 0x4de}, {0x4e0, 0x4e0}, + {0x4e2, 0x4e2}, {0x4e4, 0x4e4}, {0x4e6, 0x4e6}, {0x4e8, 0x4e8}, + {0x4ea, 0x4ea}, {0x4ec, 0x4ec}, {0x4ee, 0x4ee}, {0x4f0, 0x4f0}, + {0x4f2, 0x4f2}, {0x4f4, 0x4f4}, {0x4f8, 0x4f8}, {0x500, 0x500}, + {0x502, 0x502}, {0x504, 0x504}, {0x506, 0x506}, {0x508, 0x508}, + {0x50a, 0x50a}, {0x50c, 0x50c}, {0x50e, 0x50e}, {0x531, 0x556}, + {0x10a0, 0x10c5}, {0x1e00, 0x1e00}, {0x1e02, 0x1e02}, {0x1e04, 0x1e04}, + {0x1e06, 0x1e06}, {0x1e08, 0x1e08}, {0x1e0a, 0x1e0a}, {0x1e0c, 0x1e0c}, + {0x1e0e, 0x1e0e}, {0x1e10, 0x1e10}, {0x1e12, 0x1e12}, {0x1e14, 0x1e14}, + {0x1e16, 0x1e16}, {0x1e18, 0x1e18}, {0x1e1a, 0x1e1a}, {0x1e1c, 0x1e1c}, + {0x1e1e, 0x1e1e}, {0x1e20, 0x1e20}, {0x1e22, 0x1e22}, {0x1e24, 0x1e24}, + {0x1e26, 0x1e26}, {0x1e28, 0x1e28}, {0x1e2a, 0x1e2a}, {0x1e2c, 0x1e2c}, + {0x1e2e, 0x1e2e}, {0x1e30, 0x1e30}, {0x1e32, 0x1e32}, {0x1e34, 0x1e34}, + {0x1e36, 0x1e36}, {0x1e38, 0x1e38}, {0x1e3a, 0x1e3a}, {0x1e3c, 0x1e3c}, + {0x1e3e, 0x1e3e}, {0x1e40, 0x1e40}, {0x1e42, 0x1e42}, {0x1e44, 0x1e44}, + {0x1e46, 0x1e46}, {0x1e48, 0x1e48}, {0x1e4a, 0x1e4a}, {0x1e4c, 0x1e4c}, + {0x1e4e, 0x1e4e}, {0x1e50, 0x1e50}, {0x1e52, 0x1e52}, {0x1e54, 0x1e54}, + {0x1e56, 0x1e56}, {0x1e58, 0x1e58}, {0x1e5a, 0x1e5a}, {0x1e5c, 0x1e5c}, + {0x1e5e, 0x1e5e}, {0x1e60, 0x1e60}, {0x1e62, 0x1e62}, {0x1e64, 0x1e64}, + {0x1e66, 0x1e66}, {0x1e68, 0x1e68}, {0x1e6a, 0x1e6a}, {0x1e6c, 0x1e6c}, + {0x1e6e, 0x1e6e}, {0x1e70, 0x1e70}, {0x1e72, 0x1e72}, {0x1e74, 0x1e74}, + {0x1e76, 0x1e76}, {0x1e78, 0x1e78}, {0x1e7a, 0x1e7a}, {0x1e7c, 0x1e7c}, + {0x1e7e, 0x1e7e}, {0x1e80, 0x1e80}, {0x1e82, 0x1e82}, {0x1e84, 0x1e84}, + {0x1e86, 0x1e86}, {0x1e88, 0x1e88}, {0x1e8a, 0x1e8a}, {0x1e8c, 0x1e8c}, + {0x1e8e, 0x1e8e}, {0x1e90, 0x1e90}, {0x1e92, 0x1e92}, {0x1e94, 0x1e94}, + {0x1ea0, 0x1ea0}, {0x1ea2, 0x1ea2}, {0x1ea4, 0x1ea4}, {0x1ea6, 0x1ea6}, + {0x1ea8, 0x1ea8}, {0x1eaa, 0x1eaa}, {0x1eac, 0x1eac}, {0x1eae, 0x1eae}, + {0x1eb0, 0x1eb0}, {0x1eb2, 0x1eb2}, {0x1eb4, 0x1eb4}, {0x1eb6, 0x1eb6}, + {0x1eb8, 0x1eb8}, {0x1eba, 0x1eba}, {0x1ebc, 0x1ebc}, {0x1ebe, 0x1ebe}, + {0x1ec0, 0x1ec0}, {0x1ec2, 0x1ec2}, {0x1ec4, 0x1ec4}, {0x1ec6, 0x1ec6}, + {0x1ec8, 0x1ec8}, {0x1eca, 0x1eca}, {0x1ecc, 0x1ecc}, {0x1ece, 0x1ece}, + {0x1ed0, 0x1ed0}, {0x1ed2, 0x1ed2}, {0x1ed4, 0x1ed4}, {0x1ed6, 0x1ed6}, + {0x1ed8, 0x1ed8}, {0x1eda, 0x1eda}, {0x1edc, 0x1edc}, {0x1ede, 0x1ede}, + {0x1ee0, 0x1ee0}, {0x1ee2, 0x1ee2}, {0x1ee4, 0x1ee4}, {0x1ee6, 0x1ee6}, + {0x1ee8, 0x1ee8}, {0x1eea, 0x1eea}, {0x1eec, 0x1eec}, {0x1eee, 0x1eee}, + {0x1ef0, 0x1ef0}, {0x1ef2, 0x1ef2}, {0x1ef4, 0x1ef4}, {0x1ef6, 0x1ef6}, + {0x1ef8, 0x1ef8}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, + {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f5f}, {0x1f68, 0x1f6f}, {0x1fb8, 0x1fbb}, + {0x1fc8, 0x1fcb}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff8, 0x1ffb}, + {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210b, 0x210d}, {0x2110, 0x2112}, + {0x2115, 0x2115}, {0x2119, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, + {0x2128, 0x2128}, {0x212a, 0x212d}, {0x2130, 0x2131}, {0x2133, 0x2133}, + {0x213e, 0x213f}, {0x2145, 0x2145}, {0xff21, 0xff3a} }; +static xmlChLRange xmlLuL[] = {{0x10400, 0x10427}, {0x1d400, 0x1d419}, + {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49c, 0x1d49c}, + {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, + {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, + {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, + {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, + {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, + {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed}, + {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, + {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734}, + {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8} }; +static xmlChRangeGroup xmlLuG = {390,31,xmlLuS,xmlLuL}; + +static xmlChSRange xmlMS[] = {{0x300, 0x357}, {0x35d, 0x36f}, + {0x483, 0x486}, {0x488, 0x489}, {0x591, 0x5a1}, {0x5a3, 0x5b9}, + {0x5bb, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4}, + {0x610, 0x615}, {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc}, + {0x6de, 0x6e4}, {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711}, + {0x730, 0x74a}, {0x7a6, 0x7b0}, {0x901, 0x903}, {0x93c, 0x93c}, + {0x93e, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x983}, + {0x9bc, 0x9bc}, {0x9be, 0x9c4}, {0x9c7, 0x9c8}, {0x9cb, 0x9cd}, + {0x9d7, 0x9d7}, {0x9e2, 0x9e3}, {0xa01, 0xa03}, {0xa3c, 0xa3c}, + {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa70, 0xa71}, + {0xa81, 0xa83}, {0xabc, 0xabc}, {0xabe, 0xac5}, {0xac7, 0xac9}, + {0xacb, 0xacd}, {0xae2, 0xae3}, {0xb01, 0xb03}, {0xb3c, 0xb3c}, + {0xb3e, 0xb43}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, {0xb56, 0xb57}, + {0xb82, 0xb82}, {0xbbe, 0xbc2}, {0xbc6, 0xbc8}, {0xbca, 0xbcd}, + {0xbd7, 0xbd7}, {0xc01, 0xc03}, {0xc3e, 0xc44}, {0xc46, 0xc48}, + {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc82, 0xc83}, {0xcbc, 0xcbc}, + {0xcbe, 0xcc4}, {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, + {0xd02, 0xd03}, {0xd3e, 0xd43}, {0xd46, 0xd48}, {0xd4a, 0xd4d}, + {0xd57, 0xd57}, {0xd82, 0xd83}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, + {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xdf2, 0xdf3}, {0xe31, 0xe31}, + {0xe34, 0xe3a}, {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9}, + {0xebb, 0xebc}, {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35}, + {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf3f}, {0xf71, 0xf84}, + {0xf86, 0xf87}, {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, + {0x102c, 0x1032}, {0x1036, 0x1039}, {0x1056, 0x1059}, {0x1712, 0x1714}, + {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, {0x17b6, 0x17d3}, + {0x17dd, 0x17dd}, {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x192b}, + {0x1930, 0x193b}, {0x20d0, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a}, + {0xfb1e, 0xfb1e}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} }; +static xmlChLRange xmlML[] = {{0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, + {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, + {0xe0100, 0xe01ef} }; +static xmlChRangeGroup xmlMG = {113,6,xmlMS,xmlML}; + +static xmlChSRange xmlMcS[] = {{0x903, 0x903}, {0x93e, 0x940}, + {0x949, 0x94c}, {0x982, 0x983}, {0x9be, 0x9c0}, {0x9c7, 0x9c8}, + {0x9cb, 0x9cc}, {0x9d7, 0x9d7}, {0xa03, 0xa03}, {0xa3e, 0xa40}, + {0xa83, 0xa83}, {0xabe, 0xac0}, {0xac9, 0xac9}, {0xacb, 0xacc}, + {0xb02, 0xb03}, {0xb3e, 0xb3e}, {0xb40, 0xb40}, {0xb47, 0xb48}, + {0xb4b, 0xb4c}, {0xb57, 0xb57}, {0xbbe, 0xbbf}, {0xbc1, 0xbc2}, + {0xbc6, 0xbc8}, {0xbca, 0xbcc}, {0xbd7, 0xbd7}, {0xc01, 0xc03}, + {0xc41, 0xc44}, {0xc82, 0xc83}, {0xcbe, 0xcbe}, {0xcc0, 0xcc4}, + {0xcc7, 0xcc8}, {0xcca, 0xccb}, {0xcd5, 0xcd6}, {0xd02, 0xd03}, + {0xd3e, 0xd40}, {0xd46, 0xd48}, {0xd4a, 0xd4c}, {0xd57, 0xd57}, + {0xd82, 0xd83}, {0xdcf, 0xdd1}, {0xdd8, 0xddf}, {0xdf2, 0xdf3}, + {0xf3e, 0xf3f}, {0xf7f, 0xf7f}, {0x102c, 0x102c}, {0x1031, 0x1031}, + {0x1038, 0x1038}, {0x1056, 0x1057}, {0x17b6, 0x17b6}, {0x17be, 0x17c5}, + {0x17c7, 0x17c8}, {0x1923, 0x1926}, {0x1929, 0x192b}, {0x1930, 0x1931}, + {0x1933, 0x1938} }; +static xmlChLRange xmlMcL[] = {{0x1d165, 0x1d166}, {0x1d16d, 0x1d172} }; +static xmlChRangeGroup xmlMcG = {55,2,xmlMcS,xmlMcL}; + +static xmlChSRange xmlMnS[] = {{0x300, 0x357}, {0x35d, 0x36f}, + {0x483, 0x486}, {0x591, 0x5a1}, {0x5a3, 0x5b9}, {0x5bb, 0x5bd}, + {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c4}, {0x610, 0x615}, + {0x64b, 0x658}, {0x670, 0x670}, {0x6d6, 0x6dc}, {0x6df, 0x6e4}, + {0x6e7, 0x6e8}, {0x6ea, 0x6ed}, {0x711, 0x711}, {0x730, 0x74a}, + {0x7a6, 0x7b0}, {0x901, 0x902}, {0x93c, 0x93c}, {0x941, 0x948}, + {0x94d, 0x94d}, {0x951, 0x954}, {0x962, 0x963}, {0x981, 0x981}, + {0x9bc, 0x9bc}, {0x9c1, 0x9c4}, {0x9cd, 0x9cd}, {0x9e2, 0x9e3}, + {0xa01, 0xa02}, {0xa3c, 0xa3c}, {0xa41, 0xa42}, {0xa47, 0xa48}, + {0xa4b, 0xa4d}, {0xa70, 0xa71}, {0xa81, 0xa82}, {0xabc, 0xabc}, + {0xac1, 0xac5}, {0xac7, 0xac8}, {0xacd, 0xacd}, {0xae2, 0xae3}, + {0xb01, 0xb01}, {0xb3c, 0xb3c}, {0xb3f, 0xb3f}, {0xb41, 0xb43}, + {0xb4d, 0xb4d}, {0xb56, 0xb56}, {0xb82, 0xb82}, {0xbc0, 0xbc0}, + {0xbcd, 0xbcd}, {0xc3e, 0xc40}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, + {0xc55, 0xc56}, {0xcbc, 0xcbc}, {0xcbf, 0xcbf}, {0xcc6, 0xcc6}, + {0xccc, 0xccd}, {0xd41, 0xd43}, {0xd4d, 0xd4d}, {0xdca, 0xdca}, + {0xdd2, 0xdd4}, {0xdd6, 0xdd6}, {0xe31, 0xe31}, {0xe34, 0xe3a}, + {0xe47, 0xe4e}, {0xeb1, 0xeb1}, {0xeb4, 0xeb9}, {0xebb, 0xebc}, + {0xec8, 0xecd}, {0xf18, 0xf19}, {0xf35, 0xf35}, {0xf37, 0xf37}, + {0xf39, 0xf39}, {0xf71, 0xf7e}, {0xf80, 0xf84}, {0xf86, 0xf87}, + {0xf90, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x102d, 0x1030}, + {0x1032, 0x1032}, {0x1036, 0x1037}, {0x1039, 0x1039}, {0x1058, 0x1059}, + {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, + {0x17b7, 0x17bd}, {0x17c6, 0x17c6}, {0x17c9, 0x17d3}, {0x17dd, 0x17dd}, + {0x180b, 0x180d}, {0x18a9, 0x18a9}, {0x1920, 0x1922}, {0x1927, 0x1928}, + {0x1932, 0x1932}, {0x1939, 0x193b}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, + {0x20e5, 0x20ea}, {0x302a, 0x302f}, {0x3099, 0x309a}, {0xfb1e, 0xfb1e}, + {0xfe00, 0xfe0f}, {0xfe20, 0xfe23} }; +static xmlChLRange xmlMnL[] = {{0x1d167, 0x1d169}, {0x1d17b, 0x1d182}, + {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0xe0100, 0xe01ef} }; +static xmlChRangeGroup xmlMnG = {108,5,xmlMnS,xmlMnL}; + +static xmlChSRange xmlNS[] = {{0x30, 0x39}, {0xb2, 0xb3}, {0xb9, 0xb9}, + {0xbc, 0xbe}, {0x660, 0x669}, {0x6f0, 0x6f9}, {0x966, 0x96f}, + {0x9e6, 0x9ef}, {0x9f4, 0x9f9}, {0xa66, 0xa6f}, {0xae6, 0xaef}, + {0xb66, 0xb6f}, {0xbe7, 0xbf2}, {0xc66, 0xc6f}, {0xce6, 0xcef}, + {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9}, {0xf20, 0xf33}, + {0x1040, 0x1049}, {0x1369, 0x137c}, {0x16ee, 0x16f0}, {0x17e0, 0x17e9}, + {0x17f0, 0x17f9}, {0x1810, 0x1819}, {0x1946, 0x194f}, {0x2070, 0x2070}, + {0x2074, 0x2079}, {0x2080, 0x2089}, {0x2153, 0x2183}, {0x2460, 0x249b}, + {0x24ea, 0x24ff}, {0x2776, 0x2793}, {0x3007, 0x3007}, {0x3021, 0x3029}, + {0x3038, 0x303a}, {0x3192, 0x3195}, {0x3220, 0x3229}, {0x3251, 0x325f}, + {0x3280, 0x3289}, {0x32b1, 0x32bf}, {0xff10, 0xff19} }; +static xmlChLRange xmlNL[] = {{0x10107, 0x10133}, {0x10320, 0x10323}, + {0x1034a, 0x1034a}, {0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} }; +static xmlChRangeGroup xmlNG = {42,5,xmlNS,xmlNL}; + +static xmlChSRange xmlNdS[] = {{0x30, 0x39}, {0x660, 0x669}, + {0x6f0, 0x6f9}, {0x966, 0x96f}, {0x9e6, 0x9ef}, {0xa66, 0xa6f}, + {0xae6, 0xaef}, {0xb66, 0xb6f}, {0xbe7, 0xbef}, {0xc66, 0xc6f}, + {0xce6, 0xcef}, {0xd66, 0xd6f}, {0xe50, 0xe59}, {0xed0, 0xed9}, + {0xf20, 0xf29}, {0x1040, 0x1049}, {0x1369, 0x1371}, {0x17e0, 0x17e9}, + {0x1810, 0x1819}, {0x1946, 0x194f}, {0xff10, 0xff19} }; +static xmlChLRange xmlNdL[] = {{0x104a0, 0x104a9}, {0x1d7ce, 0x1d7ff} }; +static xmlChRangeGroup xmlNdG = {21,2,xmlNdS,xmlNdL}; + +static xmlChSRange xmlNoS[] = {{0xb2, 0xb3}, {0xb9, 0xb9}, {0xbc, 0xbe}, + {0x9f4, 0x9f9}, {0xbf0, 0xbf2}, {0xf2a, 0xf33}, {0x1372, 0x137c}, + {0x17f0, 0x17f9}, {0x2070, 0x2070}, {0x2074, 0x2079}, {0x2080, 0x2089}, + {0x2153, 0x215f}, {0x2460, 0x249b}, {0x24ea, 0x24ff}, {0x2776, 0x2793}, + {0x3192, 0x3195}, {0x3220, 0x3229}, {0x3251, 0x325f}, {0x3280, 0x3289}, + {0x32b1, 0x32bf} }; +static xmlChLRange xmlNoL[] = {{0x10107, 0x10133}, {0x10320, 0x10323} }; +static xmlChRangeGroup xmlNoG = {20,2,xmlNoS,xmlNoL}; + +static xmlChSRange xmlPS[] = {{0x21, 0x23}, {0x25, 0x2a}, {0x2c, 0x2f}, + {0x3a, 0x3b}, {0x3f, 0x40}, {0x5b, 0x5d}, {0x5f, 0x5f}, {0x7b, 0x7b}, + {0x7d, 0x7d}, {0xa1, 0xa1}, {0xab, 0xab}, {0xb7, 0xb7}, {0xbb, 0xbb}, + {0xbf, 0xbf}, {0x37e, 0x37e}, {0x387, 0x387}, {0x55a, 0x55f}, + {0x589, 0x58a}, {0x5be, 0x5be}, {0x5c0, 0x5c0}, {0x5c3, 0x5c3}, + {0x5f3, 0x5f4}, {0x60c, 0x60d}, {0x61b, 0x61b}, {0x61f, 0x61f}, + {0x66a, 0x66d}, {0x6d4, 0x6d4}, {0x700, 0x70d}, {0x964, 0x965}, + {0x970, 0x970}, {0xdf4, 0xdf4}, {0xe4f, 0xe4f}, {0xe5a, 0xe5b}, + {0xf04, 0xf12}, {0xf3a, 0xf3d}, {0xf85, 0xf85}, {0x104a, 0x104f}, + {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e}, {0x169b, 0x169c}, + {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, {0x17d8, 0x17da}, + {0x1800, 0x180a}, {0x1944, 0x1945}, {0x2010, 0x2027}, {0x2030, 0x2043}, + {0x2045, 0x2051}, {0x2053, 0x2054}, {0x2057, 0x2057}, {0x207d, 0x207e}, + {0x208d, 0x208e}, {0x2329, 0x232a}, {0x23b4, 0x23b6}, {0x2768, 0x2775}, + {0x27e6, 0x27eb}, {0x2983, 0x2998}, {0x29d8, 0x29db}, {0x29fc, 0x29fd}, + {0x3001, 0x3003}, {0x3008, 0x3011}, {0x3014, 0x301f}, {0x3030, 0x3030}, + {0x303d, 0x303d}, {0x30a0, 0x30a0}, {0x30fb, 0x30fb}, {0xfd3e, 0xfd3f}, + {0xfe30, 0xfe52}, {0xfe54, 0xfe61}, {0xfe63, 0xfe63}, {0xfe68, 0xfe68}, + {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff0a}, {0xff0c, 0xff0f}, + {0xff1a, 0xff1b}, {0xff1f, 0xff20}, {0xff3b, 0xff3d}, {0xff3f, 0xff3f}, + {0xff5b, 0xff5b}, {0xff5d, 0xff5d}, {0xff5f, 0xff65} }; +static xmlChLRange xmlPL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} }; +static xmlChRangeGroup xmlPG = {84,2,xmlPS,xmlPL}; + +static xmlChSRange xmlPdS[] = {{0x2d, 0x2d}, {0x58a, 0x58a}, + {0x1806, 0x1806}, {0x2010, 0x2015}, {0x301c, 0x301c}, {0x3030, 0x3030}, + {0x30a0, 0x30a0}, {0xfe31, 0xfe32}, {0xfe58, 0xfe58}, {0xfe63, 0xfe63}, + {0xff0d, 0xff0d} }; +static xmlChRangeGroup xmlPdG = {11,0,xmlPdS,NULL}; + +static xmlChSRange xmlPeS[] = {{0x29, 0x29}, {0x5d, 0x5d}, {0x7d, 0x7d}, + {0xf3b, 0xf3b}, {0xf3d, 0xf3d}, {0x169c, 0x169c}, {0x2046, 0x2046}, + {0x207e, 0x207e}, {0x208e, 0x208e}, {0x232a, 0x232a}, {0x23b5, 0x23b5}, + {0x2769, 0x2769}, {0x276b, 0x276b}, {0x276d, 0x276d}, {0x276f, 0x276f}, + {0x2771, 0x2771}, {0x2773, 0x2773}, {0x2775, 0x2775}, {0x27e7, 0x27e7}, + {0x27e9, 0x27e9}, {0x27eb, 0x27eb}, {0x2984, 0x2984}, {0x2986, 0x2986}, + {0x2988, 0x2988}, {0x298a, 0x298a}, {0x298c, 0x298c}, {0x298e, 0x298e}, + {0x2990, 0x2990}, {0x2992, 0x2992}, {0x2994, 0x2994}, {0x2996, 0x2996}, + {0x2998, 0x2998}, {0x29d9, 0x29d9}, {0x29db, 0x29db}, {0x29fd, 0x29fd}, + {0x3009, 0x3009}, {0x300b, 0x300b}, {0x300d, 0x300d}, {0x300f, 0x300f}, + {0x3011, 0x3011}, {0x3015, 0x3015}, {0x3017, 0x3017}, {0x3019, 0x3019}, + {0x301b, 0x301b}, {0x301e, 0x301f}, {0xfd3f, 0xfd3f}, {0xfe36, 0xfe36}, + {0xfe38, 0xfe38}, {0xfe3a, 0xfe3a}, {0xfe3c, 0xfe3c}, {0xfe3e, 0xfe3e}, + {0xfe40, 0xfe40}, {0xfe42, 0xfe42}, {0xfe44, 0xfe44}, {0xfe48, 0xfe48}, + {0xfe5a, 0xfe5a}, {0xfe5c, 0xfe5c}, {0xfe5e, 0xfe5e}, {0xff09, 0xff09}, + {0xff3d, 0xff3d}, {0xff5d, 0xff5d}, {0xff60, 0xff60}, {0xff63, 0xff63} }; +static xmlChRangeGroup xmlPeG = {63,0,xmlPeS,NULL}; + +static xmlChSRange xmlPoS[] = {{0x21, 0x23}, {0x25, 0x27}, {0x2a, 0x2a}, + {0x2c, 0x2c}, {0x2e, 0x2f}, {0x3a, 0x3b}, {0x3f, 0x40}, {0x5c, 0x5c}, + {0xa1, 0xa1}, {0xb7, 0xb7}, {0xbf, 0xbf}, {0x37e, 0x37e}, + {0x387, 0x387}, {0x55a, 0x55f}, {0x589, 0x589}, {0x5be, 0x5be}, + {0x5c0, 0x5c0}, {0x5c3, 0x5c3}, {0x5f3, 0x5f4}, {0x60c, 0x60d}, + {0x61b, 0x61b}, {0x61f, 0x61f}, {0x66a, 0x66d}, {0x6d4, 0x6d4}, + {0x700, 0x70d}, {0x964, 0x965}, {0x970, 0x970}, {0xdf4, 0xdf4}, + {0xe4f, 0xe4f}, {0xe5a, 0xe5b}, {0xf04, 0xf12}, {0xf85, 0xf85}, + {0x104a, 0x104f}, {0x10fb, 0x10fb}, {0x1361, 0x1368}, {0x166d, 0x166e}, + {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, {0x17d8, 0x17da}, + {0x1800, 0x1805}, {0x1807, 0x180a}, {0x1944, 0x1945}, {0x2016, 0x2017}, + {0x2020, 0x2027}, {0x2030, 0x2038}, {0x203b, 0x203e}, {0x2041, 0x2043}, + {0x2047, 0x2051}, {0x2053, 0x2053}, {0x2057, 0x2057}, {0x23b6, 0x23b6}, + {0x3001, 0x3003}, {0x303d, 0x303d}, {0xfe30, 0xfe30}, {0xfe45, 0xfe46}, + {0xfe49, 0xfe4c}, {0xfe50, 0xfe52}, {0xfe54, 0xfe57}, {0xfe5f, 0xfe61}, + {0xfe68, 0xfe68}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff07}, + {0xff0a, 0xff0a}, {0xff0c, 0xff0c}, {0xff0e, 0xff0f}, {0xff1a, 0xff1b}, + {0xff1f, 0xff20}, {0xff3c, 0xff3c}, {0xff61, 0xff61}, {0xff64, 0xff64} }; +static xmlChLRange xmlPoL[] = {{0x10100, 0x10101}, {0x1039f, 0x1039f} }; +static xmlChRangeGroup xmlPoG = {72,2,xmlPoS,xmlPoL}; + +static xmlChSRange xmlPsS[] = {{0x28, 0x28}, {0x5b, 0x5b}, {0x7b, 0x7b}, + {0xf3a, 0xf3a}, {0xf3c, 0xf3c}, {0x169b, 0x169b}, {0x201a, 0x201a}, + {0x201e, 0x201e}, {0x2045, 0x2045}, {0x207d, 0x207d}, {0x208d, 0x208d}, + {0x2329, 0x2329}, {0x23b4, 0x23b4}, {0x2768, 0x2768}, {0x276a, 0x276a}, + {0x276c, 0x276c}, {0x276e, 0x276e}, {0x2770, 0x2770}, {0x2772, 0x2772}, + {0x2774, 0x2774}, {0x27e6, 0x27e6}, {0x27e8, 0x27e8}, {0x27ea, 0x27ea}, + {0x2983, 0x2983}, {0x2985, 0x2985}, {0x2987, 0x2987}, {0x2989, 0x2989}, + {0x298b, 0x298b}, {0x298d, 0x298d}, {0x298f, 0x298f}, {0x2991, 0x2991}, + {0x2993, 0x2993}, {0x2995, 0x2995}, {0x2997, 0x2997}, {0x29d8, 0x29d8}, + {0x29da, 0x29da}, {0x29fc, 0x29fc}, {0x3008, 0x3008}, {0x300a, 0x300a}, + {0x300c, 0x300c}, {0x300e, 0x300e}, {0x3010, 0x3010}, {0x3014, 0x3014}, + {0x3016, 0x3016}, {0x3018, 0x3018}, {0x301a, 0x301a}, {0x301d, 0x301d}, + {0xfd3e, 0xfd3e}, {0xfe35, 0xfe35}, {0xfe37, 0xfe37}, {0xfe39, 0xfe39}, + {0xfe3b, 0xfe3b}, {0xfe3d, 0xfe3d}, {0xfe3f, 0xfe3f}, {0xfe41, 0xfe41}, + {0xfe43, 0xfe43}, {0xfe47, 0xfe47}, {0xfe59, 0xfe59}, {0xfe5b, 0xfe5b}, + {0xfe5d, 0xfe5d}, {0xff08, 0xff08}, {0xff3b, 0xff3b}, {0xff5b, 0xff5b}, + {0xff5f, 0xff5f}, {0xff62, 0xff62} }; +static xmlChRangeGroup xmlPsG = {65,0,xmlPsS,NULL}; + +static xmlChSRange xmlSS[] = {{0x24, 0x24}, {0x2b, 0x2b}, {0x3c, 0x3e}, + {0x5e, 0x5e}, {0x60, 0x60}, {0x7c, 0x7c}, {0x7e, 0x7e}, {0xa2, 0xa9}, + {0xac, 0xac}, {0xae, 0xb1}, {0xb4, 0xb4}, {0xb6, 0xb6}, {0xb8, 0xb8}, + {0xd7, 0xd7}, {0xf7, 0xf7}, {0x2c2, 0x2c5}, {0x2d2, 0x2df}, + {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375}, {0x384, 0x385}, + {0x3f6, 0x3f6}, {0x482, 0x482}, {0x60e, 0x60f}, {0x6e9, 0x6e9}, + {0x6fd, 0x6fe}, {0x9f2, 0x9f3}, {0x9fa, 0x9fa}, {0xaf1, 0xaf1}, + {0xb70, 0xb70}, {0xbf3, 0xbfa}, {0xe3f, 0xe3f}, {0xf01, 0xf03}, + {0xf13, 0xf17}, {0xf1a, 0xf1f}, {0xf34, 0xf34}, {0xf36, 0xf36}, + {0xf38, 0xf38}, {0xfbe, 0xfc5}, {0xfc7, 0xfcc}, {0xfcf, 0xfcf}, + {0x17db, 0x17db}, {0x1940, 0x1940}, {0x19e0, 0x19ff}, {0x1fbd, 0x1fbd}, + {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, + {0x1ffd, 0x1ffe}, {0x2044, 0x2044}, {0x2052, 0x2052}, {0x207a, 0x207c}, + {0x208a, 0x208c}, {0x20a0, 0x20b1}, {0x2100, 0x2101}, {0x2103, 0x2106}, + {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118}, {0x211e, 0x2123}, + {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129}, {0x212e, 0x212e}, + {0x2132, 0x2132}, {0x213a, 0x213b}, {0x2140, 0x2144}, {0x214a, 0x214b}, + {0x2190, 0x2328}, {0x232b, 0x23b3}, {0x23b7, 0x23d0}, {0x2400, 0x2426}, + {0x2440, 0x244a}, {0x249c, 0x24e9}, {0x2500, 0x2617}, {0x2619, 0x267d}, + {0x2680, 0x2691}, {0x26a0, 0x26a1}, {0x2701, 0x2704}, {0x2706, 0x2709}, + {0x270c, 0x2727}, {0x2729, 0x274b}, {0x274d, 0x274d}, {0x274f, 0x2752}, + {0x2756, 0x2756}, {0x2758, 0x275e}, {0x2761, 0x2767}, {0x2794, 0x2794}, + {0x2798, 0x27af}, {0x27b1, 0x27be}, {0x27d0, 0x27e5}, {0x27f0, 0x2982}, + {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2b0d}, {0x2e80, 0x2e99}, + {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3004, 0x3004}, + {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037}, {0x303e, 0x303f}, + {0x309b, 0x309c}, {0x3190, 0x3191}, {0x3196, 0x319f}, {0x3200, 0x321e}, + {0x322a, 0x3243}, {0x3250, 0x3250}, {0x3260, 0x327d}, {0x327f, 0x327f}, + {0x328a, 0x32b0}, {0x32c0, 0x32fe}, {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, + {0xa490, 0xa4c6}, {0xfb29, 0xfb29}, {0xfdfc, 0xfdfd}, {0xfe62, 0xfe62}, + {0xfe64, 0xfe66}, {0xfe69, 0xfe69}, {0xff04, 0xff04}, {0xff0b, 0xff0b}, + {0xff1c, 0xff1e}, {0xff3e, 0xff3e}, {0xff40, 0xff40}, {0xff5c, 0xff5c}, + {0xff5e, 0xff5e}, {0xffe0, 0xffe6}, {0xffe8, 0xffee}, {0xfffc, 0xfffd} }; +static xmlChLRange xmlSL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f}, + {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164}, + {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, + {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356}, {0x1d6c1, 0x1d6c1}, + {0x1d6db, 0x1d6db}, {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715}, + {0x1d735, 0x1d735}, {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f}, + {0x1d789, 0x1d789}, {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} }; +static xmlChRangeGroup xmlSG = {133,20,xmlSS,xmlSL}; + +static xmlChSRange xmlScS[] = {{0x24, 0x24}, {0xa2, 0xa5}, {0x9f2, 0x9f3}, + {0xaf1, 0xaf1}, {0xbf9, 0xbf9}, {0xe3f, 0xe3f}, {0x17db, 0x17db}, + {0x20a0, 0x20b1}, {0xfdfc, 0xfdfc}, {0xfe69, 0xfe69}, {0xff04, 0xff04}, + {0xffe0, 0xffe1}, {0xffe5, 0xffe6} }; +static xmlChRangeGroup xmlScG = {13,0,xmlScS,NULL}; + +static xmlChSRange xmlSkS[] = {{0x5e, 0x5e}, {0x60, 0x60}, {0xa8, 0xa8}, + {0xaf, 0xaf}, {0xb4, 0xb4}, {0xb8, 0xb8}, {0x2c2, 0x2c5}, + {0x2d2, 0x2df}, {0x2e5, 0x2ed}, {0x2ef, 0x2ff}, {0x374, 0x375}, + {0x384, 0x385}, {0x1fbd, 0x1fbd}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, + {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x309b, 0x309c}, + {0xff3e, 0xff3e}, {0xff40, 0xff40}, {0xffe3, 0xffe3} }; +static xmlChRangeGroup xmlSkG = {22,0,xmlSkS,NULL}; + +static xmlChSRange xmlSmS[] = {{0x2b, 0x2b}, {0x3c, 0x3e}, {0x7c, 0x7c}, + {0x7e, 0x7e}, {0xac, 0xac}, {0xb1, 0xb1}, {0xd7, 0xd7}, {0xf7, 0xf7}, + {0x3f6, 0x3f6}, {0x2044, 0x2044}, {0x2052, 0x2052}, {0x207a, 0x207c}, + {0x208a, 0x208c}, {0x2140, 0x2144}, {0x214b, 0x214b}, {0x2190, 0x2194}, + {0x219a, 0x219b}, {0x21a0, 0x21a0}, {0x21a3, 0x21a3}, {0x21a6, 0x21a6}, + {0x21ae, 0x21ae}, {0x21ce, 0x21cf}, {0x21d2, 0x21d2}, {0x21d4, 0x21d4}, + {0x21f4, 0x22ff}, {0x2308, 0x230b}, {0x2320, 0x2321}, {0x237c, 0x237c}, + {0x239b, 0x23b3}, {0x25b7, 0x25b7}, {0x25c1, 0x25c1}, {0x25f8, 0x25ff}, + {0x266f, 0x266f}, {0x27d0, 0x27e5}, {0x27f0, 0x27ff}, {0x2900, 0x2982}, + {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2aff}, {0xfb29, 0xfb29}, + {0xfe62, 0xfe62}, {0xfe64, 0xfe66}, {0xff0b, 0xff0b}, {0xff1c, 0xff1e}, + {0xff5c, 0xff5c}, {0xff5e, 0xff5e}, {0xffe2, 0xffe2}, {0xffe9, 0xffec} }; +static xmlChLRange xmlSmL[] = {{0x1d6c1, 0x1d6c1}, {0x1d6db, 0x1d6db}, + {0x1d6fb, 0x1d6fb}, {0x1d715, 0x1d715}, {0x1d735, 0x1d735}, + {0x1d74f, 0x1d74f}, {0x1d76f, 0x1d76f}, {0x1d789, 0x1d789}, + {0x1d7a9, 0x1d7a9}, {0x1d7c3, 0x1d7c3} }; +static xmlChRangeGroup xmlSmG = {48,10,xmlSmS,xmlSmL}; + +static xmlChSRange xmlSoS[] = {{0xa6, 0xa7}, {0xa9, 0xa9}, {0xae, 0xae}, + {0xb0, 0xb0}, {0xb6, 0xb6}, {0x482, 0x482}, {0x60e, 0x60f}, + {0x6e9, 0x6e9}, {0x6fd, 0x6fe}, {0x9fa, 0x9fa}, {0xb70, 0xb70}, + {0xbf3, 0xbf8}, {0xbfa, 0xbfa}, {0xf01, 0xf03}, {0xf13, 0xf17}, + {0xf1a, 0xf1f}, {0xf34, 0xf34}, {0xf36, 0xf36}, {0xf38, 0xf38}, + {0xfbe, 0xfc5}, {0xfc7, 0xfcc}, {0xfcf, 0xfcf}, {0x1940, 0x1940}, + {0x19e0, 0x19ff}, {0x2100, 0x2101}, {0x2103, 0x2106}, {0x2108, 0x2109}, + {0x2114, 0x2114}, {0x2116, 0x2118}, {0x211e, 0x2123}, {0x2125, 0x2125}, + {0x2127, 0x2127}, {0x2129, 0x2129}, {0x212e, 0x212e}, {0x2132, 0x2132}, + {0x213a, 0x213b}, {0x214a, 0x214a}, {0x2195, 0x2199}, {0x219c, 0x219f}, + {0x21a1, 0x21a2}, {0x21a4, 0x21a5}, {0x21a7, 0x21ad}, {0x21af, 0x21cd}, + {0x21d0, 0x21d1}, {0x21d3, 0x21d3}, {0x21d5, 0x21f3}, {0x2300, 0x2307}, + {0x230c, 0x231f}, {0x2322, 0x2328}, {0x232b, 0x237b}, {0x237d, 0x239a}, + {0x23b7, 0x23d0}, {0x2400, 0x2426}, {0x2440, 0x244a}, {0x249c, 0x24e9}, + {0x2500, 0x25b6}, {0x25b8, 0x25c0}, {0x25c2, 0x25f7}, {0x2600, 0x2617}, + {0x2619, 0x266e}, {0x2670, 0x267d}, {0x2680, 0x2691}, {0x26a0, 0x26a1}, + {0x2701, 0x2704}, {0x2706, 0x2709}, {0x270c, 0x2727}, {0x2729, 0x274b}, + {0x274d, 0x274d}, {0x274f, 0x2752}, {0x2756, 0x2756}, {0x2758, 0x275e}, + {0x2761, 0x2767}, {0x2794, 0x2794}, {0x2798, 0x27af}, {0x27b1, 0x27be}, + {0x2800, 0x28ff}, {0x2b00, 0x2b0d}, {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, + {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3004, 0x3004}, {0x3012, 0x3013}, + {0x3020, 0x3020}, {0x3036, 0x3037}, {0x303e, 0x303f}, {0x3190, 0x3191}, + {0x3196, 0x319f}, {0x3200, 0x321e}, {0x322a, 0x3243}, {0x3250, 0x3250}, + {0x3260, 0x327d}, {0x327f, 0x327f}, {0x328a, 0x32b0}, {0x32c0, 0x32fe}, + {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, {0xa490, 0xa4c6}, {0xfdfd, 0xfdfd}, + {0xffe4, 0xffe4}, {0xffe8, 0xffe8}, {0xffed, 0xffee}, {0xfffc, 0xfffd} }; +static xmlChLRange xmlSoL[] = {{0x10102, 0x10102}, {0x10137, 0x1013f}, + {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d12a, 0x1d164}, + {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, + {0x1d1ae, 0x1d1dd}, {0x1d300, 0x1d356} }; +static xmlChRangeGroup xmlSoG = {103,10,xmlSoS,xmlSoL}; + +static xmlChSRange xmlZS[] = {{0x20, 0x20}, {0xa0, 0xa0}, {0x1680, 0x1680}, + {0x180e, 0x180e}, {0x2000, 0x200b}, {0x2028, 0x2029}, {0x202f, 0x202f}, + {0x205f, 0x205f}, {0x3000, 0x3000} }; +static xmlChRangeGroup xmlZG = {9,0,xmlZS,NULL}; + +xmlUnicodeNameTable xmlUnicodeBlockTbl = {xmlUnicodeBlocks, 128}; +xmlUnicodeNameTable xmlUnicodeCatTbl = {xmlUnicodeCats, 36}; + +/** + * xmlUnicodeLookup: + * @tptr: pointer to the name table + * @name: name to be found + * + * binary table lookup for user-supplied name + * + * Returns pointer to range function if found, otherwise NULL + */ +static xmlIntFunc +*xmlUnicodeLookup(xmlUnicodeNameTable *tptr, const char *tname) { + int low, high, mid, cmp; + xmlUnicodeRange *sptr; + + low = 0; + high = tptr->numentries - 1; + sptr = tptr->table; + while (low <= high) { + mid = (low + high) / 2; + if ((cmp=strcmp(tname, sptr[mid].rangename)) == 0) + return (sptr[mid].func); + if (cmp < 0) + high = mid - 1; + else + low = mid + 1; + } + return (NULL); +} + +/** + * xmlUCSIsAegeanNumbers: + * @code: UCS code point + * + * Check whether the character is part of AegeanNumbers UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsAegeanNumbers(int code) { + return((code >= 0x10100) && (code <= 0x1013F)); +} /** * xmlUCSIsAlphabeticPresentationForms: @@ -69,7 +1020,7 @@ xmlUCSIsArabicPresentationFormsA(int code) { */ int xmlUCSIsArabicPresentationFormsB(int code) { - return((code >= 0xFE70) && (code <= 0xFEFE)); + return((code >= 0xFE70) && (code <= 0xFEFF)); } /** @@ -190,6 +1141,19 @@ xmlUCSIsBraillePatterns(int code) { } /** + * xmlUCSIsBuhid: + * @code: UCS code point + * + * Check whether the character is part of Buhid UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsBuhid(int code) { + return((code >= 0x1740) && (code <= 0x175F)); +} + +/** * xmlUCSIsByzantineMusicalSymbols: * @code: UCS code point * @@ -303,7 +1267,7 @@ xmlUCSIsCJKUnifiedIdeographs(int code) { */ int xmlUCSIsCJKUnifiedIdeographsExtensionA(int code) { - return((code >= 0x3400) && (code <= 0x4DB5)); + return((code >= 0x3400) && (code <= 0x4DBF)); } /** @@ -316,7 +1280,7 @@ xmlUCSIsCJKUnifiedIdeographsExtensionA(int code) { */ int xmlUCSIsCJKUnifiedIdeographsExtensionB(int code) { - return((code >= 0x20000) && (code <= 0x2A6D6)); + return((code >= 0x20000) && (code <= 0x2A6DF)); } /** @@ -346,29 +1310,29 @@ xmlUCSIsCombiningDiacriticalMarks(int code) { } /** - * xmlUCSIsCombiningHalfMarks: + * xmlUCSIsCombiningDiacriticalMarksforSymbols: * @code: UCS code point * - * Check whether the character is part of CombiningHalfMarks UCS Block + * Check whether the character is part of CombiningDiacriticalMarksforSymbols UCS Block * * Returns 1 if true 0 otherwise */ int -xmlUCSIsCombiningHalfMarks(int code) { - return((code >= 0xFE20) && (code <= 0xFE2F)); +xmlUCSIsCombiningDiacriticalMarksforSymbols(int code) { + return((code >= 0x20D0) && (code <= 0x20FF)); } /** - * xmlUCSIsCombiningMarksforSymbols: + * xmlUCSIsCombiningHalfMarks: * @code: UCS code point * - * Check whether the character is part of CombiningMarksforSymbols UCS Block + * Check whether the character is part of CombiningHalfMarks UCS Block * * Returns 1 if true 0 otherwise */ int -xmlUCSIsCombiningMarksforSymbols(int code) { - return((code >= 0x20D0) && (code <= 0x20FF)); +xmlUCSIsCombiningHalfMarks(int code) { + return((code >= 0xFE20) && (code <= 0xFE2F)); } /** @@ -398,6 +1362,19 @@ xmlUCSIsCurrencySymbols(int code) { } /** + * xmlUCSIsCypriotSyllabary: + * @code: UCS code point + * + * Check whether the character is part of CypriotSyllabary UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsCypriotSyllabary(int code) { + return((code >= 0x10800) && (code <= 0x1083F)); +} + +/** * xmlUCSIsCyrillic: * @code: UCS code point * @@ -411,6 +1388,19 @@ xmlUCSIsCyrillic(int code) { } /** + * xmlUCSIsCyrillicSupplement: + * @code: UCS code point + * + * Check whether the character is part of CyrillicSupplement UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsCyrillicSupplement(int code) { + return((code >= 0x0500) && (code <= 0x052F)); +} + +/** * xmlUCSIsDeseret: * @code: UCS code point * @@ -541,29 +1531,29 @@ xmlUCSIsGothic(int code) { } /** - * xmlUCSIsGreek: + * xmlUCSIsGreekExtended: * @code: UCS code point * - * Check whether the character is part of Greek UCS Block + * Check whether the character is part of GreekExtended UCS Block * * Returns 1 if true 0 otherwise */ int -xmlUCSIsGreek(int code) { - return((code >= 0x0370) && (code <= 0x03FF)); +xmlUCSIsGreekExtended(int code) { + return((code >= 0x1F00) && (code <= 0x1FFF)); } /** - * xmlUCSIsGreekExtended: + * xmlUCSIsGreekandCoptic: * @code: UCS code point * - * Check whether the character is part of GreekExtended UCS Block + * Check whether the character is part of GreekandCoptic UCS Block * * Returns 1 if true 0 otherwise */ int -xmlUCSIsGreekExtended(int code) { - return((code >= 0x1F00) && (code <= 0x1FFF)); +xmlUCSIsGreekandCoptic(int code) { + return((code >= 0x0370) && (code <= 0x03FF)); } /** @@ -641,7 +1631,20 @@ xmlUCSIsHangulJamo(int code) { */ int xmlUCSIsHangulSyllables(int code) { - return((code >= 0xAC00) && (code <= 0xD7A3)); + return((code >= 0xAC00) && (code <= 0xD7AF)); +} + +/** + * xmlUCSIsHanunoo: + * @code: UCS code point + * + * Check whether the character is part of Hanunoo UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsHanunoo(int code) { + return((code >= 0x1720) && (code <= 0x173F)); } /** @@ -775,6 +1778,19 @@ xmlUCSIsKatakana(int code) { } /** + * xmlUCSIsKatakanaPhoneticExtensions: + * @code: UCS code point + * + * Check whether the character is part of KatakanaPhoneticExtensions UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsKatakanaPhoneticExtensions(int code) { + return((code >= 0x31F0) && (code <= 0x31FF)); +} + +/** * xmlUCSIsKhmer: * @code: UCS code point * @@ -788,6 +1804,19 @@ xmlUCSIsKhmer(int code) { } /** + * xmlUCSIsKhmerSymbols: + * @code: UCS code point + * + * Check whether the character is part of KhmerSymbols UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsKhmerSymbols(int code) { + return((code >= 0x19E0) && (code <= 0x19FF)); +} + +/** * xmlUCSIsLao: * @code: UCS code point * @@ -866,6 +1895,45 @@ xmlUCSIsLetterlikeSymbols(int code) { } /** + * xmlUCSIsLimbu: + * @code: UCS code point + * + * Check whether the character is part of Limbu UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsLimbu(int code) { + return((code >= 0x1900) && (code <= 0x194F)); +} + +/** + * xmlUCSIsLinearBIdeograms: + * @code: UCS code point + * + * Check whether the character is part of LinearBIdeograms UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsLinearBIdeograms(int code) { + return((code >= 0x10080) && (code <= 0x100FF)); +} + +/** + * xmlUCSIsLinearBSyllabary: + * @code: UCS code point + * + * Check whether the character is part of LinearBSyllabary UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsLinearBSyllabary(int code) { + return((code >= 0x10000) && (code <= 0x1007F)); +} + +/** * xmlUCSIsLowSurrogates: * @code: UCS code point * @@ -918,6 +1986,32 @@ xmlUCSIsMathematicalOperators(int code) { } /** + * xmlUCSIsMiscellaneousMathematicalSymbolsA: + * @code: UCS code point + * + * Check whether the character is part of MiscellaneousMathematicalSymbols-A UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsMiscellaneousMathematicalSymbolsA(int code) { + return((code >= 0x27C0) && (code <= 0x27EF)); +} + +/** + * xmlUCSIsMiscellaneousMathematicalSymbolsB: + * @code: UCS code point + * + * Check whether the character is part of MiscellaneousMathematicalSymbols-B UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsMiscellaneousMathematicalSymbolsB(int code) { + return((code >= 0x2980) && (code <= 0x29FF)); +} + +/** * xmlUCSIsMiscellaneousSymbols: * @code: UCS code point * @@ -931,6 +2025,19 @@ xmlUCSIsMiscellaneousSymbols(int code) { } /** + * xmlUCSIsMiscellaneousSymbolsandArrows: + * @code: UCS code point + * + * Check whether the character is part of MiscellaneousSymbolsandArrows UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsMiscellaneousSymbolsandArrows(int code) { + return((code >= 0x2B00) && (code <= 0x2BFF)); +} + +/** * xmlUCSIsMiscellaneousTechnical: * @code: UCS code point * @@ -1048,16 +2155,42 @@ xmlUCSIsOriya(int code) { } /** - * xmlUCSIsPrivateUse: + * xmlUCSIsOsmanya: * @code: UCS code point * - * Check whether the character is part of PrivateUse UCS Block + * Check whether the character is part of Osmanya UCS Block * * Returns 1 if true 0 otherwise */ int -xmlUCSIsPrivateUse(int code) { - return((code >= 0x100000) && (code <= 0x10FFFD)); +xmlUCSIsOsmanya(int code) { + return((code >= 0x10480) && (code <= 0x104AF)); +} + +/** + * xmlUCSIsPhoneticExtensions: + * @code: UCS code point + * + * Check whether the character is part of PhoneticExtensions UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsPhoneticExtensions(int code) { + return((code >= 0x1D00) && (code <= 0x1D7F)); +} + +/** + * xmlUCSIsPrivateUseArea: + * @code: UCS code point + * + * Check whether the character is part of PrivateUseArea UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsPrivateUseArea(int code) { + return((code >= 0xE000) && (code <= 0xF8FF)); } /** @@ -1074,6 +2207,19 @@ xmlUCSIsRunic(int code) { } /** + * xmlUCSIsShavian: + * @code: UCS code point + * + * Check whether the character is part of Shavian UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsShavian(int code) { + return((code >= 0x10450) && (code <= 0x1047F)); +} + +/** * xmlUCSIsSinhala: * @code: UCS code point * @@ -1122,7 +2268,7 @@ xmlUCSIsSpacingModifierLetters(int code) { */ int xmlUCSIsSpecials(int code) { - return((code >= 0xFFF0) && (code <= 0xFFFD)); + return((code >= 0xFFF0) && (code <= 0xFFFF)); } /** @@ -1139,6 +2285,71 @@ xmlUCSIsSuperscriptsandSubscripts(int code) { } /** + * xmlUCSIsSupplementalArrowsA: + * @code: UCS code point + * + * Check whether the character is part of SupplementalArrows-A UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsSupplementalArrowsA(int code) { + return((code >= 0x27F0) && (code <= 0x27FF)); +} + +/** + * xmlUCSIsSupplementalArrowsB: + * @code: UCS code point + * + * Check whether the character is part of SupplementalArrows-B UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsSupplementalArrowsB(int code) { + return((code >= 0x2900) && (code <= 0x297F)); +} + +/** + * xmlUCSIsSupplementalMathematicalOperators: + * @code: UCS code point + * + * Check whether the character is part of SupplementalMathematicalOperators UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsSupplementalMathematicalOperators(int code) { + return((code >= 0x2A00) && (code <= 0x2AFF)); +} + +/** + * xmlUCSIsSupplementaryPrivateUseAreaA: + * @code: UCS code point + * + * Check whether the character is part of SupplementaryPrivateUseArea-A UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsSupplementaryPrivateUseAreaA(int code) { + return((code >= 0xF0000) && (code <= 0xFFFFF)); +} + +/** + * xmlUCSIsSupplementaryPrivateUseAreaB: + * @code: UCS code point + * + * Check whether the character is part of SupplementaryPrivateUseArea-B UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsSupplementaryPrivateUseAreaB(int code) { + return((code >= 0x100000) && (code <= 0x10FFFF)); +} + +/** * xmlUCSIsSyriac: * @code: UCS code point * @@ -1152,6 +2363,32 @@ xmlUCSIsSyriac(int code) { } /** + * xmlUCSIsTagalog: + * @code: UCS code point + * + * Check whether the character is part of Tagalog UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsTagalog(int code) { + return((code >= 0x1700) && (code <= 0x171F)); +} + +/** + * xmlUCSIsTagbanwa: + * @code: UCS code point + * + * Check whether the character is part of Tagbanwa UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsTagbanwa(int code) { + return((code >= 0x1760) && (code <= 0x177F)); +} + +/** * xmlUCSIsTags: * @code: UCS code point * @@ -1165,6 +2402,32 @@ xmlUCSIsTags(int code) { } /** + * xmlUCSIsTaiLe: + * @code: UCS code point + * + * Check whether the character is part of TaiLe UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsTaiLe(int code) { + return((code >= 0x1950) && (code <= 0x197F)); +} + +/** + * xmlUCSIsTaiXuanJingSymbols: + * @code: UCS code point + * + * Check whether the character is part of TaiXuanJingSymbols UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsTaiXuanJingSymbols(int code) { + return((code >= 0x1D300) && (code <= 0x1D35F)); +} + +/** * xmlUCSIsTamil: * @code: UCS code point * @@ -1230,6 +2493,19 @@ xmlUCSIsTibetan(int code) { } /** + * xmlUCSIsUgaritic: + * @code: UCS code point + * + * Check whether the character is part of Ugaritic UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsUgaritic(int code) { + return((code >= 0x10380) && (code <= 0x1039F)); +} + +/** * xmlUCSIsUnifiedCanadianAboriginalSyllabics: * @code: UCS code point * @@ -1243,6 +2519,32 @@ xmlUCSIsUnifiedCanadianAboriginalSyllabics(int code) { } /** + * xmlUCSIsVariationSelectors: + * @code: UCS code point + * + * Check whether the character is part of VariationSelectors UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsVariationSelectors(int code) { + return((code >= 0xFE00) && (code <= 0xFE0F)); +} + +/** + * xmlUCSIsVariationSelectorsSupplement: + * @code: UCS code point + * + * Check whether the character is part of VariationSelectorsSupplement UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsVariationSelectorsSupplement(int code) { + return((code >= 0xE0100) && (code <= 0xE01EF)); +} + +/** * xmlUCSIsYiRadicals: * @code: UCS code point * @@ -1269,209 +2571,35 @@ xmlUCSIsYiSyllables(int code) { } /** + * xmlUCSIsYijingHexagramSymbols: + * @code: UCS code point + * + * Check whether the character is part of YijingHexagramSymbols UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsYijingHexagramSymbols(int code) { + return((code >= 0x4DC0) && (code <= 0x4DFF)); +} + +/** * xmlUCSIsBlock: * @code: UCS code point * @block: UCS block name * - * Check whether the caracter is part of the UCS Block + * Check whether the character is part of the UCS Block * * Returns 1 if true, 0 if false and -1 on unknown block */ int xmlUCSIsBlock(int code, const char *block) { - if (!strcmp(block, "AlphabeticPresentationForms")) - return(xmlUCSIsAlphabeticPresentationForms(code)); - if (!strcmp(block, "Arabic")) - return(xmlUCSIsArabic(code)); - if (!strcmp(block, "ArabicPresentationForms-A")) - return(xmlUCSIsArabicPresentationFormsA(code)); - if (!strcmp(block, "ArabicPresentationForms-B")) - return(xmlUCSIsArabicPresentationFormsB(code)); - if (!strcmp(block, "Armenian")) - return(xmlUCSIsArmenian(code)); - if (!strcmp(block, "Arrows")) - return(xmlUCSIsArrows(code)); - if (!strcmp(block, "BasicLatin")) - return(xmlUCSIsBasicLatin(code)); - if (!strcmp(block, "Bengali")) - return(xmlUCSIsBengali(code)); - if (!strcmp(block, "BlockElements")) - return(xmlUCSIsBlockElements(code)); - if (!strcmp(block, "Bopomofo")) - return(xmlUCSIsBopomofo(code)); - if (!strcmp(block, "BopomofoExtended")) - return(xmlUCSIsBopomofoExtended(code)); - if (!strcmp(block, "BoxDrawing")) - return(xmlUCSIsBoxDrawing(code)); - if (!strcmp(block, "BraillePatterns")) - return(xmlUCSIsBraillePatterns(code)); - if (!strcmp(block, "ByzantineMusicalSymbols")) - return(xmlUCSIsByzantineMusicalSymbols(code)); - if (!strcmp(block, "CJKCompatibility")) - return(xmlUCSIsCJKCompatibility(code)); - if (!strcmp(block, "CJKCompatibilityForms")) - return(xmlUCSIsCJKCompatibilityForms(code)); - if (!strcmp(block, "CJKCompatibilityIdeographs")) - return(xmlUCSIsCJKCompatibilityIdeographs(code)); - if (!strcmp(block, "CJKCompatibilityIdeographsSupplement")) - return(xmlUCSIsCJKCompatibilityIdeographsSupplement(code)); - if (!strcmp(block, "CJKRadicalsSupplement")) - return(xmlUCSIsCJKRadicalsSupplement(code)); - if (!strcmp(block, "CJKSymbolsandPunctuation")) - return(xmlUCSIsCJKSymbolsandPunctuation(code)); - if (!strcmp(block, "CJKUnifiedIdeographs")) - return(xmlUCSIsCJKUnifiedIdeographs(code)); - if (!strcmp(block, "CJKUnifiedIdeographsExtensionA")) - return(xmlUCSIsCJKUnifiedIdeographsExtensionA(code)); - if (!strcmp(block, "CJKUnifiedIdeographsExtensionB")) - return(xmlUCSIsCJKUnifiedIdeographsExtensionB(code)); - if (!strcmp(block, "Cherokee")) - return(xmlUCSIsCherokee(code)); - if (!strcmp(block, "CombiningDiacriticalMarks")) - return(xmlUCSIsCombiningDiacriticalMarks(code)); - if (!strcmp(block, "CombiningHalfMarks")) - return(xmlUCSIsCombiningHalfMarks(code)); - if (!strcmp(block, "CombiningMarksforSymbols")) - return(xmlUCSIsCombiningMarksforSymbols(code)); - if (!strcmp(block, "ControlPictures")) - return(xmlUCSIsControlPictures(code)); - if (!strcmp(block, "CurrencySymbols")) - return(xmlUCSIsCurrencySymbols(code)); - if (!strcmp(block, "Cyrillic")) - return(xmlUCSIsCyrillic(code)); - if (!strcmp(block, "Deseret")) - return(xmlUCSIsDeseret(code)); - if (!strcmp(block, "Devanagari")) - return(xmlUCSIsDevanagari(code)); - if (!strcmp(block, "Dingbats")) - return(xmlUCSIsDingbats(code)); - if (!strcmp(block, "EnclosedAlphanumerics")) - return(xmlUCSIsEnclosedAlphanumerics(code)); - if (!strcmp(block, "EnclosedCJKLettersandMonths")) - return(xmlUCSIsEnclosedCJKLettersandMonths(code)); - if (!strcmp(block, "Ethiopic")) - return(xmlUCSIsEthiopic(code)); - if (!strcmp(block, "GeneralPunctuation")) - return(xmlUCSIsGeneralPunctuation(code)); - if (!strcmp(block, "GeometricShapes")) - return(xmlUCSIsGeometricShapes(code)); - if (!strcmp(block, "Georgian")) - return(xmlUCSIsGeorgian(code)); - if (!strcmp(block, "Gothic")) - return(xmlUCSIsGothic(code)); - if (!strcmp(block, "Greek")) - return(xmlUCSIsGreek(code)); - if (!strcmp(block, "GreekExtended")) - return(xmlUCSIsGreekExtended(code)); - if (!strcmp(block, "Gujarati")) - return(xmlUCSIsGujarati(code)); - if (!strcmp(block, "Gurmukhi")) - return(xmlUCSIsGurmukhi(code)); - if (!strcmp(block, "HalfwidthandFullwidthForms")) - return(xmlUCSIsHalfwidthandFullwidthForms(code)); - if (!strcmp(block, "HangulCompatibilityJamo")) - return(xmlUCSIsHangulCompatibilityJamo(code)); - if (!strcmp(block, "HangulJamo")) - return(xmlUCSIsHangulJamo(code)); - if (!strcmp(block, "HangulSyllables")) - return(xmlUCSIsHangulSyllables(code)); - if (!strcmp(block, "Hebrew")) - return(xmlUCSIsHebrew(code)); - if (!strcmp(block, "HighPrivateUseSurrogates")) - return(xmlUCSIsHighPrivateUseSurrogates(code)); - if (!strcmp(block, "HighSurrogates")) - return(xmlUCSIsHighSurrogates(code)); - if (!strcmp(block, "Hiragana")) - return(xmlUCSIsHiragana(code)); - if (!strcmp(block, "IPAExtensions")) - return(xmlUCSIsIPAExtensions(code)); - if (!strcmp(block, "IdeographicDescriptionCharacters")) - return(xmlUCSIsIdeographicDescriptionCharacters(code)); - if (!strcmp(block, "Kanbun")) - return(xmlUCSIsKanbun(code)); - if (!strcmp(block, "KangxiRadicals")) - return(xmlUCSIsKangxiRadicals(code)); - if (!strcmp(block, "Kannada")) - return(xmlUCSIsKannada(code)); - if (!strcmp(block, "Katakana")) - return(xmlUCSIsKatakana(code)); - if (!strcmp(block, "Khmer")) - return(xmlUCSIsKhmer(code)); - if (!strcmp(block, "Lao")) - return(xmlUCSIsLao(code)); - if (!strcmp(block, "Latin-1Supplement")) - return(xmlUCSIsLatin1Supplement(code)); - if (!strcmp(block, "LatinExtended-A")) - return(xmlUCSIsLatinExtendedA(code)); - if (!strcmp(block, "LatinExtended-B")) - return(xmlUCSIsLatinExtendedB(code)); - if (!strcmp(block, "LatinExtendedAdditional")) - return(xmlUCSIsLatinExtendedAdditional(code)); - if (!strcmp(block, "LetterlikeSymbols")) - return(xmlUCSIsLetterlikeSymbols(code)); - if (!strcmp(block, "LowSurrogates")) - return(xmlUCSIsLowSurrogates(code)); - if (!strcmp(block, "Malayalam")) - return(xmlUCSIsMalayalam(code)); - if (!strcmp(block, "MathematicalAlphanumericSymbols")) - return(xmlUCSIsMathematicalAlphanumericSymbols(code)); - if (!strcmp(block, "MathematicalOperators")) - return(xmlUCSIsMathematicalOperators(code)); - if (!strcmp(block, "MiscellaneousSymbols")) - return(xmlUCSIsMiscellaneousSymbols(code)); - if (!strcmp(block, "MiscellaneousTechnical")) - return(xmlUCSIsMiscellaneousTechnical(code)); - if (!strcmp(block, "Mongolian")) - return(xmlUCSIsMongolian(code)); - if (!strcmp(block, "MusicalSymbols")) - return(xmlUCSIsMusicalSymbols(code)); - if (!strcmp(block, "Myanmar")) - return(xmlUCSIsMyanmar(code)); - if (!strcmp(block, "NumberForms")) - return(xmlUCSIsNumberForms(code)); - if (!strcmp(block, "Ogham")) - return(xmlUCSIsOgham(code)); - if (!strcmp(block, "OldItalic")) - return(xmlUCSIsOldItalic(code)); - if (!strcmp(block, "OpticalCharacterRecognition")) - return(xmlUCSIsOpticalCharacterRecognition(code)); - if (!strcmp(block, "Oriya")) - return(xmlUCSIsOriya(code)); - if (!strcmp(block, "PrivateUse")) - return(xmlUCSIsPrivateUse(code)); - if (!strcmp(block, "Runic")) - return(xmlUCSIsRunic(code)); - if (!strcmp(block, "Sinhala")) - return(xmlUCSIsSinhala(code)); - if (!strcmp(block, "SmallFormVariants")) - return(xmlUCSIsSmallFormVariants(code)); - if (!strcmp(block, "SpacingModifierLetters")) - return(xmlUCSIsSpacingModifierLetters(code)); - if (!strcmp(block, "Specials")) - return(xmlUCSIsSpecials(code)); - if (!strcmp(block, "SuperscriptsandSubscripts")) - return(xmlUCSIsSuperscriptsandSubscripts(code)); - if (!strcmp(block, "Syriac")) - return(xmlUCSIsSyriac(code)); - if (!strcmp(block, "Tags")) - return(xmlUCSIsTags(code)); - if (!strcmp(block, "Tamil")) - return(xmlUCSIsTamil(code)); - if (!strcmp(block, "Telugu")) - return(xmlUCSIsTelugu(code)); - if (!strcmp(block, "Thaana")) - return(xmlUCSIsThaana(code)); - if (!strcmp(block, "Thai")) - return(xmlUCSIsThai(code)); - if (!strcmp(block, "Tibetan")) - return(xmlUCSIsTibetan(code)); - if (!strcmp(block, "UnifiedCanadianAboriginalSyllabics")) - return(xmlUCSIsUnifiedCanadianAboriginalSyllabics(code)); - if (!strcmp(block, "YiRadicals")) - return(xmlUCSIsYiRadicals(code)); - if (!strcmp(block, "YiSyllables")) - return(xmlUCSIsYiSyllables(code)); - return(-1); + xmlIntFunc *func; + + func = xmlUnicodeLookup(&xmlUnicodeBlockTbl, block); + if (func == NULL) + return (-1); + return (func(code)); } /** @@ -1484,27 +2612,7 @@ xmlUCSIsBlock(int code, const char *block) { */ int xmlUCSIsCatC(int code) { - return(((code >= 0x0) && (code <= 0x1f)) || - ((code >= 0x7f) && (code <= 0x9f)) || - (code == 0x70f) || - ((code >= 0x180b) && (code <= 0x180e)) || - ((code >= 0x200c) && (code <= 0x200f)) || - ((code >= 0x202a) && (code <= 0x202e)) || - ((code >= 0x206a) && (code <= 0x206f)) || - (code == 0xd800) || - ((code >= 0xdb7f) && (code <= 0xdb80)) || - ((code >= 0xdbff) && (code <= 0xdc00)) || - ((code >= 0xdfff) && (code <= 0xe000)) || - (code == 0xf8ff) || - (code == 0xfeff) || - ((code >= 0xfff9) && (code <= 0xfffb)) || - ((code >= 0x1d173) && (code <= 0x1d17a)) || - (code == 0xe0001) || - ((code >= 0xe0020) && (code <= 0xe007f)) || - (code == 0xf0000) || - (code == 0xffffd) || - (code == 0x100000) || - (code == 0x10fffd)); + return(xmlCharInRange((unsigned int)code, &xmlCG)); } /** @@ -1531,16 +2639,7 @@ xmlUCSIsCatCc(int code) { */ int xmlUCSIsCatCf(int code) { - return((code == 0x70f) || - ((code >= 0x180b) && (code <= 0x180e)) || - ((code >= 0x200c) && (code <= 0x200f)) || - ((code >= 0x202a) && (code <= 0x202e)) || - ((code >= 0x206a) && (code <= 0x206f)) || - (code == 0xfeff) || - ((code >= 0xfff9) && (code <= 0xfffb)) || - ((code >= 0x1d173) && (code <= 0x1d17a)) || - (code == 0xe0001) || - ((code >= 0xe0020) && (code <= 0xe007f))); + return(xmlCharInRange((unsigned int)code, &xmlCfG)); } /** @@ -1587,302 +2686,7 @@ xmlUCSIsCatCs(int code) { */ int xmlUCSIsCatL(int code) { - return(((code >= 0x41) && (code <= 0x5a)) || - ((code >= 0x61) && (code <= 0x7a)) || - (code == 0xaa) || - (code == 0xb5) || - (code == 0xba) || - ((code >= 0xc0) && (code <= 0xd6)) || - ((code >= 0xd8) && (code <= 0xf6)) || - ((code >= 0xf8) && (code <= 0x21f)) || - ((code >= 0x222) && (code <= 0x233)) || - ((code >= 0x250) && (code <= 0x2ad)) || - ((code >= 0x2b0) && (code <= 0x2b8)) || - ((code >= 0x2bb) && (code <= 0x2c1)) || - ((code >= 0x2d0) && (code <= 0x2d1)) || - ((code >= 0x2e0) && (code <= 0x2e4)) || - (code == 0x2ee) || - (code == 0x37a) || - (code == 0x386) || - ((code >= 0x388) && (code <= 0x38a)) || - (code == 0x38c) || - ((code >= 0x38e) && (code <= 0x3a1)) || - ((code >= 0x3a3) && (code <= 0x3ce)) || - ((code >= 0x3d0) && (code <= 0x3d7)) || - ((code >= 0x3da) && (code <= 0x3f5)) || - ((code >= 0x400) && (code <= 0x481)) || - ((code >= 0x48c) && (code <= 0x4c4)) || - ((code >= 0x4c7) && (code <= 0x4c8)) || - ((code >= 0x4cb) && (code <= 0x4cc)) || - ((code >= 0x4d0) && (code <= 0x4f5)) || - ((code >= 0x4f8) && (code <= 0x4f9)) || - ((code >= 0x531) && (code <= 0x556)) || - (code == 0x559) || - ((code >= 0x561) && (code <= 0x587)) || - ((code >= 0x5d0) && (code <= 0x5ea)) || - ((code >= 0x5f0) && (code <= 0x5f2)) || - ((code >= 0x621) && (code <= 0x63a)) || - ((code >= 0x640) && (code <= 0x64a)) || - ((code >= 0x671) && (code <= 0x6d3)) || - (code == 0x6d5) || - ((code >= 0x6e5) && (code <= 0x6e6)) || - ((code >= 0x6fa) && (code <= 0x6fc)) || - (code == 0x710) || - ((code >= 0x712) && (code <= 0x72c)) || - ((code >= 0x780) && (code <= 0x7a5)) || - ((code >= 0x905) && (code <= 0x939)) || - (code == 0x93d) || - (code == 0x950) || - ((code >= 0x958) && (code <= 0x961)) || - ((code >= 0x985) && (code <= 0x98c)) || - ((code >= 0x98f) && (code <= 0x990)) || - ((code >= 0x993) && (code <= 0x9a8)) || - ((code >= 0x9aa) && (code <= 0x9b0)) || - (code == 0x9b2) || - ((code >= 0x9b6) && (code <= 0x9b9)) || - ((code >= 0x9dc) && (code <= 0x9dd)) || - ((code >= 0x9df) && (code <= 0x9e1)) || - ((code >= 0x9f0) && (code <= 0x9f1)) || - ((code >= 0xa05) && (code <= 0xa0a)) || - ((code >= 0xa0f) && (code <= 0xa10)) || - ((code >= 0xa13) && (code <= 0xa28)) || - ((code >= 0xa2a) && (code <= 0xa30)) || - ((code >= 0xa32) && (code <= 0xa33)) || - ((code >= 0xa35) && (code <= 0xa36)) || - ((code >= 0xa38) && (code <= 0xa39)) || - ((code >= 0xa59) && (code <= 0xa5c)) || - (code == 0xa5e) || - ((code >= 0xa72) && (code <= 0xa74)) || - ((code >= 0xa85) && (code <= 0xa8b)) || - (code == 0xa8d) || - ((code >= 0xa8f) && (code <= 0xa91)) || - ((code >= 0xa93) && (code <= 0xaa8)) || - ((code >= 0xaaa) && (code <= 0xab0)) || - ((code >= 0xab2) && (code <= 0xab3)) || - ((code >= 0xab5) && (code <= 0xab9)) || - (code == 0xabd) || - (code == 0xad0) || - (code == 0xae0) || - ((code >= 0xb05) && (code <= 0xb0c)) || - ((code >= 0xb0f) && (code <= 0xb10)) || - ((code >= 0xb13) && (code <= 0xb28)) || - ((code >= 0xb2a) && (code <= 0xb30)) || - ((code >= 0xb32) && (code <= 0xb33)) || - ((code >= 0xb36) && (code <= 0xb39)) || - (code == 0xb3d) || - ((code >= 0xb5c) && (code <= 0xb5d)) || - ((code >= 0xb5f) && (code <= 0xb61)) || - ((code >= 0xb85) && (code <= 0xb8a)) || - ((code >= 0xb8e) && (code <= 0xb90)) || - ((code >= 0xb92) && (code <= 0xb95)) || - ((code >= 0xb99) && (code <= 0xb9a)) || - (code == 0xb9c) || - ((code >= 0xb9e) && (code <= 0xb9f)) || - ((code >= 0xba3) && (code <= 0xba4)) || - ((code >= 0xba8) && (code <= 0xbaa)) || - ((code >= 0xbae) && (code <= 0xbb5)) || - ((code >= 0xbb7) && (code <= 0xbb9)) || - ((code >= 0xc05) && (code <= 0xc0c)) || - ((code >= 0xc0e) && (code <= 0xc10)) || - ((code >= 0xc12) && (code <= 0xc28)) || - ((code >= 0xc2a) && (code <= 0xc33)) || - ((code >= 0xc35) && (code <= 0xc39)) || - ((code >= 0xc60) && (code <= 0xc61)) || - ((code >= 0xc85) && (code <= 0xc8c)) || - ((code >= 0xc8e) && (code <= 0xc90)) || - ((code >= 0xc92) && (code <= 0xca8)) || - ((code >= 0xcaa) && (code <= 0xcb3)) || - ((code >= 0xcb5) && (code <= 0xcb9)) || - (code == 0xcde) || - ((code >= 0xce0) && (code <= 0xce1)) || - ((code >= 0xd05) && (code <= 0xd0c)) || - ((code >= 0xd0e) && (code <= 0xd10)) || - ((code >= 0xd12) && (code <= 0xd28)) || - ((code >= 0xd2a) && (code <= 0xd39)) || - ((code >= 0xd60) && (code <= 0xd61)) || - ((code >= 0xd85) && (code <= 0xd96)) || - ((code >= 0xd9a) && (code <= 0xdb1)) || - ((code >= 0xdb3) && (code <= 0xdbb)) || - (code == 0xdbd) || - ((code >= 0xdc0) && (code <= 0xdc6)) || - ((code >= 0xe01) && (code <= 0xe30)) || - ((code >= 0xe32) && (code <= 0xe33)) || - ((code >= 0xe40) && (code <= 0xe46)) || - ((code >= 0xe81) && (code <= 0xe82)) || - (code == 0xe84) || - ((code >= 0xe87) && (code <= 0xe88)) || - (code == 0xe8a) || - (code == 0xe8d) || - ((code >= 0xe94) && (code <= 0xe97)) || - ((code >= 0xe99) && (code <= 0xe9f)) || - ((code >= 0xea1) && (code <= 0xea3)) || - (code == 0xea5) || - (code == 0xea7) || - ((code >= 0xeaa) && (code <= 0xeab)) || - ((code >= 0xead) && (code <= 0xeb0)) || - ((code >= 0xeb2) && (code <= 0xeb3)) || - (code == 0xebd) || - ((code >= 0xec0) && (code <= 0xec4)) || - (code == 0xec6) || - ((code >= 0xedc) && (code <= 0xedd)) || - (code == 0xf00) || - ((code >= 0xf40) && (code <= 0xf47)) || - ((code >= 0xf49) && (code <= 0xf6a)) || - ((code >= 0xf88) && (code <= 0xf8b)) || - ((code >= 0x1000) && (code <= 0x1021)) || - ((code >= 0x1023) && (code <= 0x1027)) || - ((code >= 0x1029) && (code <= 0x102a)) || - ((code >= 0x1050) && (code <= 0x1055)) || - ((code >= 0x10a0) && (code <= 0x10c5)) || - ((code >= 0x10d0) && (code <= 0x10f6)) || - ((code >= 0x1100) && (code <= 0x1159)) || - ((code >= 0x115f) && (code <= 0x11a2)) || - ((code >= 0x11a8) && (code <= 0x11f9)) || - ((code >= 0x1200) && (code <= 0x1206)) || - ((code >= 0x1208) && (code <= 0x1246)) || - (code == 0x1248) || - ((code >= 0x124a) && (code <= 0x124d)) || - ((code >= 0x1250) && (code <= 0x1256)) || - (code == 0x1258) || - ((code >= 0x125a) && (code <= 0x125d)) || - ((code >= 0x1260) && (code <= 0x1286)) || - (code == 0x1288) || - ((code >= 0x128a) && (code <= 0x128d)) || - ((code >= 0x1290) && (code <= 0x12ae)) || - (code == 0x12b0) || - ((code >= 0x12b2) && (code <= 0x12b5)) || - ((code >= 0x12b8) && (code <= 0x12be)) || - (code == 0x12c0) || - ((code >= 0x12c2) && (code <= 0x12c5)) || - ((code >= 0x12c8) && (code <= 0x12ce)) || - ((code >= 0x12d0) && (code <= 0x12d6)) || - ((code >= 0x12d8) && (code <= 0x12ee)) || - ((code >= 0x12f0) && (code <= 0x130e)) || - (code == 0x1310) || - ((code >= 0x1312) && (code <= 0x1315)) || - ((code >= 0x1318) && (code <= 0x131e)) || - ((code >= 0x1320) && (code <= 0x1346)) || - ((code >= 0x1348) && (code <= 0x135a)) || - ((code >= 0x13a0) && (code <= 0x13f4)) || - ((code >= 0x1401) && (code <= 0x166c)) || - ((code >= 0x166f) && (code <= 0x1676)) || - ((code >= 0x1681) && (code <= 0x169a)) || - ((code >= 0x16a0) && (code <= 0x16ea)) || - ((code >= 0x1780) && (code <= 0x17b3)) || - ((code >= 0x1820) && (code <= 0x1877)) || - ((code >= 0x1880) && (code <= 0x18a8)) || - ((code >= 0x1e00) && (code <= 0x1e9b)) || - ((code >= 0x1ea0) && (code <= 0x1ef9)) || - ((code >= 0x1f00) && (code <= 0x1f15)) || - ((code >= 0x1f18) && (code <= 0x1f1d)) || - ((code >= 0x1f20) && (code <= 0x1f45)) || - ((code >= 0x1f48) && (code <= 0x1f4d)) || - ((code >= 0x1f50) && (code <= 0x1f57)) || - (code == 0x1f59) || - (code == 0x1f5b) || - (code == 0x1f5d) || - ((code >= 0x1f5f) && (code <= 0x1f7d)) || - ((code >= 0x1f80) && (code <= 0x1fb4)) || - ((code >= 0x1fb6) && (code <= 0x1fbc)) || - (code == 0x1fbe) || - ((code >= 0x1fc2) && (code <= 0x1fc4)) || - ((code >= 0x1fc6) && (code <= 0x1fcc)) || - ((code >= 0x1fd0) && (code <= 0x1fd3)) || - ((code >= 0x1fd6) && (code <= 0x1fdb)) || - ((code >= 0x1fe0) && (code <= 0x1fec)) || - ((code >= 0x1ff2) && (code <= 0x1ff4)) || - ((code >= 0x1ff6) && (code <= 0x1ffc)) || - (code == 0x207f) || - (code == 0x2102) || - (code == 0x2107) || - ((code >= 0x210a) && (code <= 0x2113)) || - (code == 0x2115) || - ((code >= 0x2119) && (code <= 0x211d)) || - (code == 0x2124) || - (code == 0x2126) || - (code == 0x2128) || - ((code >= 0x212a) && (code <= 0x212d)) || - ((code >= 0x212f) && (code <= 0x2131)) || - ((code >= 0x2133) && (code <= 0x2139)) || - ((code >= 0x3005) && (code <= 0x3006)) || - ((code >= 0x3031) && (code <= 0x3035)) || - ((code >= 0x3041) && (code <= 0x3094)) || - ((code >= 0x309d) && (code <= 0x309e)) || - ((code >= 0x30a1) && (code <= 0x30fa)) || - ((code >= 0x30fc) && (code <= 0x30fe)) || - ((code >= 0x3105) && (code <= 0x312c)) || - ((code >= 0x3131) && (code <= 0x318e)) || - ((code >= 0x31a0) && (code <= 0x31b7)) || - (code == 0x3400) || - (code == 0x4db5) || - (code == 0x4e00) || - (code == 0x9fa5) || - ((code >= 0xa000) && (code <= 0xa48c)) || - (code == 0xac00) || - (code == 0xd7a3) || - ((code >= 0xf900) && (code <= 0xfa2d)) || - ((code >= 0xfb00) && (code <= 0xfb06)) || - ((code >= 0xfb13) && (code <= 0xfb17)) || - (code == 0xfb1d) || - ((code >= 0xfb1f) && (code <= 0xfb28)) || - ((code >= 0xfb2a) && (code <= 0xfb36)) || - ((code >= 0xfb38) && (code <= 0xfb3c)) || - (code == 0xfb3e) || - ((code >= 0xfb40) && (code <= 0xfb41)) || - ((code >= 0xfb43) && (code <= 0xfb44)) || - ((code >= 0xfb46) && (code <= 0xfbb1)) || - ((code >= 0xfbd3) && (code <= 0xfd3d)) || - ((code >= 0xfd50) && (code <= 0xfd8f)) || - ((code >= 0xfd92) && (code <= 0xfdc7)) || - ((code >= 0xfdf0) && (code <= 0xfdfb)) || - ((code >= 0xfe70) && (code <= 0xfe72)) || - (code == 0xfe74) || - ((code >= 0xfe76) && (code <= 0xfefc)) || - ((code >= 0xff21) && (code <= 0xff3a)) || - ((code >= 0xff41) && (code <= 0xff5a)) || - ((code >= 0xff66) && (code <= 0xffbe)) || - ((code >= 0xffc2) && (code <= 0xffc7)) || - ((code >= 0xffca) && (code <= 0xffcf)) || - ((code >= 0xffd2) && (code <= 0xffd7)) || - ((code >= 0xffda) && (code <= 0xffdc)) || - ((code >= 0x10300) && (code <= 0x1031e)) || - ((code >= 0x10330) && (code <= 0x10349)) || - ((code >= 0x10400) && (code <= 0x10425)) || - ((code >= 0x10428) && (code <= 0x1044d)) || - ((code >= 0x1d400) && (code <= 0x1d454)) || - ((code >= 0x1d456) && (code <= 0x1d49c)) || - ((code >= 0x1d49e) && (code <= 0x1d49f)) || - (code == 0x1d4a2) || - ((code >= 0x1d4a5) && (code <= 0x1d4a6)) || - ((code >= 0x1d4a9) && (code <= 0x1d4ac)) || - ((code >= 0x1d4ae) && (code <= 0x1d4b9)) || - (code == 0x1d4bb) || - ((code >= 0x1d4bd) && (code <= 0x1d4c0)) || - ((code >= 0x1d4c2) && (code <= 0x1d4c3)) || - ((code >= 0x1d4c5) && (code <= 0x1d505)) || - ((code >= 0x1d507) && (code <= 0x1d50a)) || - ((code >= 0x1d50d) && (code <= 0x1d514)) || - ((code >= 0x1d516) && (code <= 0x1d51c)) || - ((code >= 0x1d51e) && (code <= 0x1d539)) || - ((code >= 0x1d53b) && (code <= 0x1d53e)) || - ((code >= 0x1d540) && (code <= 0x1d544)) || - (code == 0x1d546) || - ((code >= 0x1d54a) && (code <= 0x1d550)) || - ((code >= 0x1d552) && (code <= 0x1d6a3)) || - ((code >= 0x1d6a8) && (code <= 0x1d6c0)) || - ((code >= 0x1d6c2) && (code <= 0x1d6da)) || - ((code >= 0x1d6dc) && (code <= 0x1d6fa)) || - ((code >= 0x1d6fc) && (code <= 0x1d714)) || - ((code >= 0x1d716) && (code <= 0x1d734)) || - ((code >= 0x1d736) && (code <= 0x1d74e)) || - ((code >= 0x1d750) && (code <= 0x1d76e)) || - ((code >= 0x1d770) && (code <= 0x1d788)) || - ((code >= 0x1d78a) && (code <= 0x1d7a8)) || - ((code >= 0x1d7aa) && (code <= 0x1d7c2)) || - ((code >= 0x1d7c4) && (code <= 0x1d7c9)) || - (code == 0x20000) || - (code == 0x2a6d6) || - ((code >= 0x2f800) && (code <= 0x2fa1d))); + return(xmlCharInRange((unsigned int)code, &xmlLG)); } /** @@ -1895,410 +2699,7 @@ xmlUCSIsCatL(int code) { */ int xmlUCSIsCatLl(int code) { - return(((code >= 0x61) && (code <= 0x7a)) || - (code == 0xaa) || - (code == 0xb5) || - (code == 0xba) || - ((code >= 0xdf) && (code <= 0xf6)) || - ((code >= 0xf8) && (code <= 0xff)) || - (code == 0x101) || - (code == 0x103) || - (code == 0x105) || - (code == 0x107) || - (code == 0x109) || - (code == 0x10b) || - (code == 0x10d) || - (code == 0x10f) || - (code == 0x111) || - (code == 0x113) || - (code == 0x115) || - (code == 0x117) || - (code == 0x119) || - (code == 0x11b) || - (code == 0x11d) || - (code == 0x11f) || - (code == 0x121) || - (code == 0x123) || - (code == 0x125) || - (code == 0x127) || - (code == 0x129) || - (code == 0x12b) || - (code == 0x12d) || - (code == 0x12f) || - (code == 0x131) || - (code == 0x133) || - (code == 0x135) || - ((code >= 0x137) && (code <= 0x138)) || - (code == 0x13a) || - (code == 0x13c) || - (code == 0x13e) || - (code == 0x140) || - (code == 0x142) || - (code == 0x144) || - (code == 0x146) || - ((code >= 0x148) && (code <= 0x149)) || - (code == 0x14b) || - (code == 0x14d) || - (code == 0x14f) || - (code == 0x151) || - (code == 0x153) || - (code == 0x155) || - (code == 0x157) || - (code == 0x159) || - (code == 0x15b) || - (code == 0x15d) || - (code == 0x15f) || - (code == 0x161) || - (code == 0x163) || - (code == 0x165) || - (code == 0x167) || - (code == 0x169) || - (code == 0x16b) || - (code == 0x16d) || - (code == 0x16f) || - (code == 0x171) || - (code == 0x173) || - (code == 0x175) || - (code == 0x177) || - (code == 0x17a) || - (code == 0x17c) || - ((code >= 0x17e) && (code <= 0x180)) || - (code == 0x183) || - (code == 0x185) || - (code == 0x188) || - ((code >= 0x18c) && (code <= 0x18d)) || - (code == 0x192) || - (code == 0x195) || - ((code >= 0x199) && (code <= 0x19b)) || - (code == 0x19e) || - (code == 0x1a1) || - (code == 0x1a3) || - (code == 0x1a5) || - (code == 0x1a8) || - ((code >= 0x1aa) && (code <= 0x1ab)) || - (code == 0x1ad) || - (code == 0x1b0) || - (code == 0x1b4) || - (code == 0x1b6) || - ((code >= 0x1b9) && (code <= 0x1ba)) || - ((code >= 0x1bd) && (code <= 0x1bf)) || - (code == 0x1c6) || - (code == 0x1c9) || - (code == 0x1cc) || - (code == 0x1ce) || - (code == 0x1d0) || - (code == 0x1d2) || - (code == 0x1d4) || - (code == 0x1d6) || - (code == 0x1d8) || - (code == 0x1da) || - ((code >= 0x1dc) && (code <= 0x1dd)) || - (code == 0x1df) || - (code == 0x1e1) || - (code == 0x1e3) || - (code == 0x1e5) || - (code == 0x1e7) || - (code == 0x1e9) || - (code == 0x1eb) || - (code == 0x1ed) || - ((code >= 0x1ef) && (code <= 0x1f0)) || - (code == 0x1f3) || - (code == 0x1f5) || - (code == 0x1f9) || - (code == 0x1fb) || - (code == 0x1fd) || - (code == 0x1ff) || - (code == 0x201) || - (code == 0x203) || - (code == 0x205) || - (code == 0x207) || - (code == 0x209) || - (code == 0x20b) || - (code == 0x20d) || - (code == 0x20f) || - (code == 0x211) || - (code == 0x213) || - (code == 0x215) || - (code == 0x217) || - (code == 0x219) || - (code == 0x21b) || - (code == 0x21d) || - (code == 0x21f) || - (code == 0x223) || - (code == 0x225) || - (code == 0x227) || - (code == 0x229) || - (code == 0x22b) || - (code == 0x22d) || - (code == 0x22f) || - (code == 0x231) || - (code == 0x233) || - ((code >= 0x250) && (code <= 0x2ad)) || - (code == 0x390) || - ((code >= 0x3ac) && (code <= 0x3ce)) || - ((code >= 0x3d0) && (code <= 0x3d1)) || - ((code >= 0x3d5) && (code <= 0x3d7)) || - (code == 0x3db) || - (code == 0x3dd) || - (code == 0x3df) || - (code == 0x3e1) || - (code == 0x3e3) || - (code == 0x3e5) || - (code == 0x3e7) || - (code == 0x3e9) || - (code == 0x3eb) || - (code == 0x3ed) || - ((code >= 0x3ef) && (code <= 0x3f3)) || - (code == 0x3f5) || - ((code >= 0x430) && (code <= 0x45f)) || - (code == 0x461) || - (code == 0x463) || - (code == 0x465) || - (code == 0x467) || - (code == 0x469) || - (code == 0x46b) || - (code == 0x46d) || - (code == 0x46f) || - (code == 0x471) || - (code == 0x473) || - (code == 0x475) || - (code == 0x477) || - (code == 0x479) || - (code == 0x47b) || - (code == 0x47d) || - (code == 0x47f) || - (code == 0x481) || - (code == 0x48d) || - (code == 0x48f) || - (code == 0x491) || - (code == 0x493) || - (code == 0x495) || - (code == 0x497) || - (code == 0x499) || - (code == 0x49b) || - (code == 0x49d) || - (code == 0x49f) || - (code == 0x4a1) || - (code == 0x4a3) || - (code == 0x4a5) || - (code == 0x4a7) || - (code == 0x4a9) || - (code == 0x4ab) || - (code == 0x4ad) || - (code == 0x4af) || - (code == 0x4b1) || - (code == 0x4b3) || - (code == 0x4b5) || - (code == 0x4b7) || - (code == 0x4b9) || - (code == 0x4bb) || - (code == 0x4bd) || - (code == 0x4bf) || - (code == 0x4c2) || - (code == 0x4c4) || - (code == 0x4c8) || - (code == 0x4cc) || - (code == 0x4d1) || - (code == 0x4d3) || - (code == 0x4d5) || - (code == 0x4d7) || - (code == 0x4d9) || - (code == 0x4db) || - (code == 0x4dd) || - (code == 0x4df) || - (code == 0x4e1) || - (code == 0x4e3) || - (code == 0x4e5) || - (code == 0x4e7) || - (code == 0x4e9) || - (code == 0x4eb) || - (code == 0x4ed) || - (code == 0x4ef) || - (code == 0x4f1) || - (code == 0x4f3) || - (code == 0x4f5) || - (code == 0x4f9) || - ((code >= 0x561) && (code <= 0x587)) || - (code == 0x1e01) || - (code == 0x1e03) || - (code == 0x1e05) || - (code == 0x1e07) || - (code == 0x1e09) || - (code == 0x1e0b) || - (code == 0x1e0d) || - (code == 0x1e0f) || - (code == 0x1e11) || - (code == 0x1e13) || - (code == 0x1e15) || - (code == 0x1e17) || - (code == 0x1e19) || - (code == 0x1e1b) || - (code == 0x1e1d) || - (code == 0x1e1f) || - (code == 0x1e21) || - (code == 0x1e23) || - (code == 0x1e25) || - (code == 0x1e27) || - (code == 0x1e29) || - (code == 0x1e2b) || - (code == 0x1e2d) || - (code == 0x1e2f) || - (code == 0x1e31) || - (code == 0x1e33) || - (code == 0x1e35) || - (code == 0x1e37) || - (code == 0x1e39) || - (code == 0x1e3b) || - (code == 0x1e3d) || - (code == 0x1e3f) || - (code == 0x1e41) || - (code == 0x1e43) || - (code == 0x1e45) || - (code == 0x1e47) || - (code == 0x1e49) || - (code == 0x1e4b) || - (code == 0x1e4d) || - (code == 0x1e4f) || - (code == 0x1e51) || - (code == 0x1e53) || - (code == 0x1e55) || - (code == 0x1e57) || - (code == 0x1e59) || - (code == 0x1e5b) || - (code == 0x1e5d) || - (code == 0x1e5f) || - (code == 0x1e61) || - (code == 0x1e63) || - (code == 0x1e65) || - (code == 0x1e67) || - (code == 0x1e69) || - (code == 0x1e6b) || - (code == 0x1e6d) || - (code == 0x1e6f) || - (code == 0x1e71) || - (code == 0x1e73) || - (code == 0x1e75) || - (code == 0x1e77) || - (code == 0x1e79) || - (code == 0x1e7b) || - (code == 0x1e7d) || - (code == 0x1e7f) || - (code == 0x1e81) || - (code == 0x1e83) || - (code == 0x1e85) || - (code == 0x1e87) || - (code == 0x1e89) || - (code == 0x1e8b) || - (code == 0x1e8d) || - (code == 0x1e8f) || - (code == 0x1e91) || - (code == 0x1e93) || - ((code >= 0x1e95) && (code <= 0x1e9b)) || - (code == 0x1ea1) || - (code == 0x1ea3) || - (code == 0x1ea5) || - (code == 0x1ea7) || - (code == 0x1ea9) || - (code == 0x1eab) || - (code == 0x1ead) || - (code == 0x1eaf) || - (code == 0x1eb1) || - (code == 0x1eb3) || - (code == 0x1eb5) || - (code == 0x1eb7) || - (code == 0x1eb9) || - (code == 0x1ebb) || - (code == 0x1ebd) || - (code == 0x1ebf) || - (code == 0x1ec1) || - (code == 0x1ec3) || - (code == 0x1ec5) || - (code == 0x1ec7) || - (code == 0x1ec9) || - (code == 0x1ecb) || - (code == 0x1ecd) || - (code == 0x1ecf) || - (code == 0x1ed1) || - (code == 0x1ed3) || - (code == 0x1ed5) || - (code == 0x1ed7) || - (code == 0x1ed9) || - (code == 0x1edb) || - (code == 0x1edd) || - (code == 0x1edf) || - (code == 0x1ee1) || - (code == 0x1ee3) || - (code == 0x1ee5) || - (code == 0x1ee7) || - (code == 0x1ee9) || - (code == 0x1eeb) || - (code == 0x1eed) || - (code == 0x1eef) || - (code == 0x1ef1) || - (code == 0x1ef3) || - (code == 0x1ef5) || - (code == 0x1ef7) || - (code == 0x1ef9) || - ((code >= 0x1f00) && (code <= 0x1f07)) || - ((code >= 0x1f10) && (code <= 0x1f15)) || - ((code >= 0x1f20) && (code <= 0x1f27)) || - ((code >= 0x1f30) && (code <= 0x1f37)) || - ((code >= 0x1f40) && (code <= 0x1f45)) || - ((code >= 0x1f50) && (code <= 0x1f57)) || - ((code >= 0x1f60) && (code <= 0x1f67)) || - ((code >= 0x1f70) && (code <= 0x1f7d)) || - ((code >= 0x1f80) && (code <= 0x1f87)) || - ((code >= 0x1f90) && (code <= 0x1f97)) || - ((code >= 0x1fa0) && (code <= 0x1fa7)) || - ((code >= 0x1fb0) && (code <= 0x1fb4)) || - ((code >= 0x1fb6) && (code <= 0x1fb7)) || - (code == 0x1fbe) || - ((code >= 0x1fc2) && (code <= 0x1fc4)) || - ((code >= 0x1fc6) && (code <= 0x1fc7)) || - ((code >= 0x1fd0) && (code <= 0x1fd3)) || - ((code >= 0x1fd6) && (code <= 0x1fd7)) || - ((code >= 0x1fe0) && (code <= 0x1fe7)) || - ((code >= 0x1ff2) && (code <= 0x1ff4)) || - ((code >= 0x1ff6) && (code <= 0x1ff7)) || - (code == 0x207f) || - (code == 0x210a) || - ((code >= 0x210e) && (code <= 0x210f)) || - (code == 0x2113) || - (code == 0x212f) || - (code == 0x2134) || - (code == 0x2139) || - ((code >= 0xfb00) && (code <= 0xfb06)) || - ((code >= 0xfb13) && (code <= 0xfb17)) || - ((code >= 0xff41) && (code <= 0xff5a)) || - ((code >= 0x10428) && (code <= 0x1044d)) || - ((code >= 0x1d41a) && (code <= 0x1d433)) || - ((code >= 0x1d44e) && (code <= 0x1d454)) || - ((code >= 0x1d456) && (code <= 0x1d467)) || - ((code >= 0x1d482) && (code <= 0x1d49b)) || - ((code >= 0x1d4b6) && (code <= 0x1d4b9)) || - (code == 0x1d4bb) || - ((code >= 0x1d4bd) && (code <= 0x1d4c0)) || - ((code >= 0x1d4c2) && (code <= 0x1d4c3)) || - ((code >= 0x1d4c5) && (code <= 0x1d4cf)) || - ((code >= 0x1d4ea) && (code <= 0x1d503)) || - ((code >= 0x1d51e) && (code <= 0x1d537)) || - ((code >= 0x1d552) && (code <= 0x1d56b)) || - ((code >= 0x1d586) && (code <= 0x1d59f)) || - ((code >= 0x1d5ba) && (code <= 0x1d5d3)) || - ((code >= 0x1d5ee) && (code <= 0x1d607)) || - ((code >= 0x1d622) && (code <= 0x1d63b)) || - ((code >= 0x1d656) && (code <= 0x1d66f)) || - ((code >= 0x1d68a) && (code <= 0x1d6a3)) || - ((code >= 0x1d6c2) && (code <= 0x1d6da)) || - ((code >= 0x1d6dc) && (code <= 0x1d6e1)) || - ((code >= 0x1d6fc) && (code <= 0x1d714)) || - ((code >= 0x1d716) && (code <= 0x1d71b)) || - ((code >= 0x1d736) && (code <= 0x1d74e)) || - ((code >= 0x1d750) && (code <= 0x1d755)) || - ((code >= 0x1d770) && (code <= 0x1d788)) || - ((code >= 0x1d78a) && (code <= 0x1d78f)) || - ((code >= 0x1d7aa) && (code <= 0x1d7c2)) || - ((code >= 0x1d7c4) && (code <= 0x1d7c9))); + return(xmlCharInRange((unsigned int)code, &xmlLlG)); } /** @@ -2311,24 +2712,7 @@ xmlUCSIsCatLl(int code) { */ int xmlUCSIsCatLm(int code) { - return(((code >= 0x2b0) && (code <= 0x2b8)) || - ((code >= 0x2bb) && (code <= 0x2c1)) || - ((code >= 0x2d0) && (code <= 0x2d1)) || - ((code >= 0x2e0) && (code <= 0x2e4)) || - (code == 0x2ee) || - (code == 0x37a) || - (code == 0x559) || - (code == 0x640) || - ((code >= 0x6e5) && (code <= 0x6e6)) || - (code == 0xe46) || - (code == 0xec6) || - (code == 0x1843) || - (code == 0x3005) || - ((code >= 0x3031) && (code <= 0x3035)) || - ((code >= 0x309d) && (code <= 0x309e)) || - ((code >= 0x30fc) && (code <= 0x30fe)) || - (code == 0xff70) || - ((code >= 0xff9e) && (code <= 0xff9f))); + return(xmlCharInRange((unsigned int)code, &xmlLmG)); } /** @@ -2341,200 +2725,7 @@ xmlUCSIsCatLm(int code) { */ int xmlUCSIsCatLo(int code) { - return((code == 0x1bb) || - ((code >= 0x1c0) && (code <= 0x1c3)) || - ((code >= 0x5d0) && (code <= 0x5ea)) || - ((code >= 0x5f0) && (code <= 0x5f2)) || - ((code >= 0x621) && (code <= 0x63a)) || - ((code >= 0x641) && (code <= 0x64a)) || - ((code >= 0x671) && (code <= 0x6d3)) || - (code == 0x6d5) || - ((code >= 0x6fa) && (code <= 0x6fc)) || - (code == 0x710) || - ((code >= 0x712) && (code <= 0x72c)) || - ((code >= 0x780) && (code <= 0x7a5)) || - ((code >= 0x905) && (code <= 0x939)) || - (code == 0x93d) || - (code == 0x950) || - ((code >= 0x958) && (code <= 0x961)) || - ((code >= 0x985) && (code <= 0x98c)) || - ((code >= 0x98f) && (code <= 0x990)) || - ((code >= 0x993) && (code <= 0x9a8)) || - ((code >= 0x9aa) && (code <= 0x9b0)) || - (code == 0x9b2) || - ((code >= 0x9b6) && (code <= 0x9b9)) || - ((code >= 0x9dc) && (code <= 0x9dd)) || - ((code >= 0x9df) && (code <= 0x9e1)) || - ((code >= 0x9f0) && (code <= 0x9f1)) || - ((code >= 0xa05) && (code <= 0xa0a)) || - ((code >= 0xa0f) && (code <= 0xa10)) || - ((code >= 0xa13) && (code <= 0xa28)) || - ((code >= 0xa2a) && (code <= 0xa30)) || - ((code >= 0xa32) && (code <= 0xa33)) || - ((code >= 0xa35) && (code <= 0xa36)) || - ((code >= 0xa38) && (code <= 0xa39)) || - ((code >= 0xa59) && (code <= 0xa5c)) || - (code == 0xa5e) || - ((code >= 0xa72) && (code <= 0xa74)) || - ((code >= 0xa85) && (code <= 0xa8b)) || - (code == 0xa8d) || - ((code >= 0xa8f) && (code <= 0xa91)) || - ((code >= 0xa93) && (code <= 0xaa8)) || - ((code >= 0xaaa) && (code <= 0xab0)) || - ((code >= 0xab2) && (code <= 0xab3)) || - ((code >= 0xab5) && (code <= 0xab9)) || - (code == 0xabd) || - (code == 0xad0) || - (code == 0xae0) || - ((code >= 0xb05) && (code <= 0xb0c)) || - ((code >= 0xb0f) && (code <= 0xb10)) || - ((code >= 0xb13) && (code <= 0xb28)) || - ((code >= 0xb2a) && (code <= 0xb30)) || - ((code >= 0xb32) && (code <= 0xb33)) || - ((code >= 0xb36) && (code <= 0xb39)) || - (code == 0xb3d) || - ((code >= 0xb5c) && (code <= 0xb5d)) || - ((code >= 0xb5f) && (code <= 0xb61)) || - ((code >= 0xb85) && (code <= 0xb8a)) || - ((code >= 0xb8e) && (code <= 0xb90)) || - ((code >= 0xb92) && (code <= 0xb95)) || - ((code >= 0xb99) && (code <= 0xb9a)) || - (code == 0xb9c) || - ((code >= 0xb9e) && (code <= 0xb9f)) || - ((code >= 0xba3) && (code <= 0xba4)) || - ((code >= 0xba8) && (code <= 0xbaa)) || - ((code >= 0xbae) && (code <= 0xbb5)) || - ((code >= 0xbb7) && (code <= 0xbb9)) || - ((code >= 0xc05) && (code <= 0xc0c)) || - ((code >= 0xc0e) && (code <= 0xc10)) || - ((code >= 0xc12) && (code <= 0xc28)) || - ((code >= 0xc2a) && (code <= 0xc33)) || - ((code >= 0xc35) && (code <= 0xc39)) || - ((code >= 0xc60) && (code <= 0xc61)) || - ((code >= 0xc85) && (code <= 0xc8c)) || - ((code >= 0xc8e) && (code <= 0xc90)) || - ((code >= 0xc92) && (code <= 0xca8)) || - ((code >= 0xcaa) && (code <= 0xcb3)) || - ((code >= 0xcb5) && (code <= 0xcb9)) || - (code == 0xcde) || - ((code >= 0xce0) && (code <= 0xce1)) || - ((code >= 0xd05) && (code <= 0xd0c)) || - ((code >= 0xd0e) && (code <= 0xd10)) || - ((code >= 0xd12) && (code <= 0xd28)) || - ((code >= 0xd2a) && (code <= 0xd39)) || - ((code >= 0xd60) && (code <= 0xd61)) || - ((code >= 0xd85) && (code <= 0xd96)) || - ((code >= 0xd9a) && (code <= 0xdb1)) || - ((code >= 0xdb3) && (code <= 0xdbb)) || - (code == 0xdbd) || - ((code >= 0xdc0) && (code <= 0xdc6)) || - ((code >= 0xe01) && (code <= 0xe30)) || - ((code >= 0xe32) && (code <= 0xe33)) || - ((code >= 0xe40) && (code <= 0xe45)) || - ((code >= 0xe81) && (code <= 0xe82)) || - (code == 0xe84) || - ((code >= 0xe87) && (code <= 0xe88)) || - (code == 0xe8a) || - (code == 0xe8d) || - ((code >= 0xe94) && (code <= 0xe97)) || - ((code >= 0xe99) && (code <= 0xe9f)) || - ((code >= 0xea1) && (code <= 0xea3)) || - (code == 0xea5) || - (code == 0xea7) || - ((code >= 0xeaa) && (code <= 0xeab)) || - ((code >= 0xead) && (code <= 0xeb0)) || - ((code >= 0xeb2) && (code <= 0xeb3)) || - (code == 0xebd) || - ((code >= 0xec0) && (code <= 0xec4)) || - ((code >= 0xedc) && (code <= 0xedd)) || - (code == 0xf00) || - ((code >= 0xf40) && (code <= 0xf47)) || - ((code >= 0xf49) && (code <= 0xf6a)) || - ((code >= 0xf88) && (code <= 0xf8b)) || - ((code >= 0x1000) && (code <= 0x1021)) || - ((code >= 0x1023) && (code <= 0x1027)) || - ((code >= 0x1029) && (code <= 0x102a)) || - ((code >= 0x1050) && (code <= 0x1055)) || - ((code >= 0x10d0) && (code <= 0x10f6)) || - ((code >= 0x1100) && (code <= 0x1159)) || - ((code >= 0x115f) && (code <= 0x11a2)) || - ((code >= 0x11a8) && (code <= 0x11f9)) || - ((code >= 0x1200) && (code <= 0x1206)) || - ((code >= 0x1208) && (code <= 0x1246)) || - (code == 0x1248) || - ((code >= 0x124a) && (code <= 0x124d)) || - ((code >= 0x1250) && (code <= 0x1256)) || - (code == 0x1258) || - ((code >= 0x125a) && (code <= 0x125d)) || - ((code >= 0x1260) && (code <= 0x1286)) || - (code == 0x1288) || - ((code >= 0x128a) && (code <= 0x128d)) || - ((code >= 0x1290) && (code <= 0x12ae)) || - (code == 0x12b0) || - ((code >= 0x12b2) && (code <= 0x12b5)) || - ((code >= 0x12b8) && (code <= 0x12be)) || - (code == 0x12c0) || - ((code >= 0x12c2) && (code <= 0x12c5)) || - ((code >= 0x12c8) && (code <= 0x12ce)) || - ((code >= 0x12d0) && (code <= 0x12d6)) || - ((code >= 0x12d8) && (code <= 0x12ee)) || - ((code >= 0x12f0) && (code <= 0x130e)) || - (code == 0x1310) || - ((code >= 0x1312) && (code <= 0x1315)) || - ((code >= 0x1318) && (code <= 0x131e)) || - ((code >= 0x1320) && (code <= 0x1346)) || - ((code >= 0x1348) && (code <= 0x135a)) || - ((code >= 0x13a0) && (code <= 0x13f4)) || - ((code >= 0x1401) && (code <= 0x166c)) || - ((code >= 0x166f) && (code <= 0x1676)) || - ((code >= 0x1681) && (code <= 0x169a)) || - ((code >= 0x16a0) && (code <= 0x16ea)) || - ((code >= 0x1780) && (code <= 0x17b3)) || - ((code >= 0x1820) && (code <= 0x1842)) || - ((code >= 0x1844) && (code <= 0x1877)) || - ((code >= 0x1880) && (code <= 0x18a8)) || - ((code >= 0x2135) && (code <= 0x2138)) || - (code == 0x3006) || - ((code >= 0x3041) && (code <= 0x3094)) || - ((code >= 0x30a1) && (code <= 0x30fa)) || - ((code >= 0x3105) && (code <= 0x312c)) || - ((code >= 0x3131) && (code <= 0x318e)) || - ((code >= 0x31a0) && (code <= 0x31b7)) || - (code == 0x3400) || - (code == 0x4db5) || - (code == 0x4e00) || - (code == 0x9fa5) || - ((code >= 0xa000) && (code <= 0xa48c)) || - (code == 0xac00) || - (code == 0xd7a3) || - ((code >= 0xf900) && (code <= 0xfa2d)) || - (code == 0xfb1d) || - ((code >= 0xfb1f) && (code <= 0xfb28)) || - ((code >= 0xfb2a) && (code <= 0xfb36)) || - ((code >= 0xfb38) && (code <= 0xfb3c)) || - (code == 0xfb3e) || - ((code >= 0xfb40) && (code <= 0xfb41)) || - ((code >= 0xfb43) && (code <= 0xfb44)) || - ((code >= 0xfb46) && (code <= 0xfbb1)) || - ((code >= 0xfbd3) && (code <= 0xfd3d)) || - ((code >= 0xfd50) && (code <= 0xfd8f)) || - ((code >= 0xfd92) && (code <= 0xfdc7)) || - ((code >= 0xfdf0) && (code <= 0xfdfb)) || - ((code >= 0xfe70) && (code <= 0xfe72)) || - (code == 0xfe74) || - ((code >= 0xfe76) && (code <= 0xfefc)) || - ((code >= 0xff66) && (code <= 0xff6f)) || - ((code >= 0xff71) && (code <= 0xff9d)) || - ((code >= 0xffa0) && (code <= 0xffbe)) || - ((code >= 0xffc2) && (code <= 0xffc7)) || - ((code >= 0xffca) && (code <= 0xffcf)) || - ((code >= 0xffd2) && (code <= 0xffd7)) || - ((code >= 0xffda) && (code <= 0xffdc)) || - ((code >= 0x10300) && (code <= 0x1031e)) || - ((code >= 0x10330) && (code <= 0x10349)) || - (code == 0x20000) || - (code == 0x2a6d6) || - ((code >= 0x2f800) && (code <= 0x2fa1d))); + return(xmlCharInRange((unsigned int)code, &xmlLoG)); } /** @@ -2547,16 +2738,7 @@ xmlUCSIsCatLo(int code) { */ int xmlUCSIsCatLt(int code) { - return((code == 0x1c5) || - (code == 0x1c8) || - (code == 0x1cb) || - (code == 0x1f2) || - ((code >= 0x1f88) && (code <= 0x1f8f)) || - ((code >= 0x1f98) && (code <= 0x1f9f)) || - ((code >= 0x1fa8) && (code <= 0x1faf)) || - (code == 0x1fbc) || - (code == 0x1fcc) || - (code == 0x1ffc)); + return(xmlCharInRange((unsigned int)code, &xmlLtG)); } /** @@ -2569,409 +2751,7 @@ xmlUCSIsCatLt(int code) { */ int xmlUCSIsCatLu(int code) { - return(((code >= 0x41) && (code <= 0x5a)) || - ((code >= 0xc0) && (code <= 0xd6)) || - ((code >= 0xd8) && (code <= 0xde)) || - (code == 0x100) || - (code == 0x102) || - (code == 0x104) || - (code == 0x106) || - (code == 0x108) || - (code == 0x10a) || - (code == 0x10c) || - (code == 0x10e) || - (code == 0x110) || - (code == 0x112) || - (code == 0x114) || - (code == 0x116) || - (code == 0x118) || - (code == 0x11a) || - (code == 0x11c) || - (code == 0x11e) || - (code == 0x120) || - (code == 0x122) || - (code == 0x124) || - (code == 0x126) || - (code == 0x128) || - (code == 0x12a) || - (code == 0x12c) || - (code == 0x12e) || - (code == 0x130) || - (code == 0x132) || - (code == 0x134) || - (code == 0x136) || - (code == 0x139) || - (code == 0x13b) || - (code == 0x13d) || - (code == 0x13f) || - (code == 0x141) || - (code == 0x143) || - (code == 0x145) || - (code == 0x147) || - (code == 0x14a) || - (code == 0x14c) || - (code == 0x14e) || - (code == 0x150) || - (code == 0x152) || - (code == 0x154) || - (code == 0x156) || - (code == 0x158) || - (code == 0x15a) || - (code == 0x15c) || - (code == 0x15e) || - (code == 0x160) || - (code == 0x162) || - (code == 0x164) || - (code == 0x166) || - (code == 0x168) || - (code == 0x16a) || - (code == 0x16c) || - (code == 0x16e) || - (code == 0x170) || - (code == 0x172) || - (code == 0x174) || - (code == 0x176) || - ((code >= 0x178) && (code <= 0x179)) || - (code == 0x17b) || - (code == 0x17d) || - ((code >= 0x181) && (code <= 0x182)) || - (code == 0x184) || - ((code >= 0x186) && (code <= 0x187)) || - ((code >= 0x189) && (code <= 0x18b)) || - ((code >= 0x18e) && (code <= 0x191)) || - ((code >= 0x193) && (code <= 0x194)) || - ((code >= 0x196) && (code <= 0x198)) || - ((code >= 0x19c) && (code <= 0x19d)) || - ((code >= 0x19f) && (code <= 0x1a0)) || - (code == 0x1a2) || - (code == 0x1a4) || - ((code >= 0x1a6) && (code <= 0x1a7)) || - (code == 0x1a9) || - (code == 0x1ac) || - ((code >= 0x1ae) && (code <= 0x1af)) || - ((code >= 0x1b1) && (code <= 0x1b3)) || - (code == 0x1b5) || - ((code >= 0x1b7) && (code <= 0x1b8)) || - (code == 0x1bc) || - (code == 0x1c4) || - (code == 0x1c7) || - (code == 0x1ca) || - (code == 0x1cd) || - (code == 0x1cf) || - (code == 0x1d1) || - (code == 0x1d3) || - (code == 0x1d5) || - (code == 0x1d7) || - (code == 0x1d9) || - (code == 0x1db) || - (code == 0x1de) || - (code == 0x1e0) || - (code == 0x1e2) || - (code == 0x1e4) || - (code == 0x1e6) || - (code == 0x1e8) || - (code == 0x1ea) || - (code == 0x1ec) || - (code == 0x1ee) || - (code == 0x1f1) || - (code == 0x1f4) || - ((code >= 0x1f6) && (code <= 0x1f8)) || - (code == 0x1fa) || - (code == 0x1fc) || - (code == 0x1fe) || - (code == 0x200) || - (code == 0x202) || - (code == 0x204) || - (code == 0x206) || - (code == 0x208) || - (code == 0x20a) || - (code == 0x20c) || - (code == 0x20e) || - (code == 0x210) || - (code == 0x212) || - (code == 0x214) || - (code == 0x216) || - (code == 0x218) || - (code == 0x21a) || - (code == 0x21c) || - (code == 0x21e) || - (code == 0x222) || - (code == 0x224) || - (code == 0x226) || - (code == 0x228) || - (code == 0x22a) || - (code == 0x22c) || - (code == 0x22e) || - (code == 0x230) || - (code == 0x232) || - (code == 0x386) || - ((code >= 0x388) && (code <= 0x38a)) || - (code == 0x38c) || - ((code >= 0x38e) && (code <= 0x38f)) || - ((code >= 0x391) && (code <= 0x3a1)) || - ((code >= 0x3a3) && (code <= 0x3ab)) || - ((code >= 0x3d2) && (code <= 0x3d4)) || - (code == 0x3da) || - (code == 0x3dc) || - (code == 0x3de) || - (code == 0x3e0) || - (code == 0x3e2) || - (code == 0x3e4) || - (code == 0x3e6) || - (code == 0x3e8) || - (code == 0x3ea) || - (code == 0x3ec) || - (code == 0x3ee) || - (code == 0x3f4) || - ((code >= 0x400) && (code <= 0x42f)) || - (code == 0x460) || - (code == 0x462) || - (code == 0x464) || - (code == 0x466) || - (code == 0x468) || - (code == 0x46a) || - (code == 0x46c) || - (code == 0x46e) || - (code == 0x470) || - (code == 0x472) || - (code == 0x474) || - (code == 0x476) || - (code == 0x478) || - (code == 0x47a) || - (code == 0x47c) || - (code == 0x47e) || - (code == 0x480) || - (code == 0x48c) || - (code == 0x48e) || - (code == 0x490) || - (code == 0x492) || - (code == 0x494) || - (code == 0x496) || - (code == 0x498) || - (code == 0x49a) || - (code == 0x49c) || - (code == 0x49e) || - (code == 0x4a0) || - (code == 0x4a2) || - (code == 0x4a4) || - (code == 0x4a6) || - (code == 0x4a8) || - (code == 0x4aa) || - (code == 0x4ac) || - (code == 0x4ae) || - (code == 0x4b0) || - (code == 0x4b2) || - (code == 0x4b4) || - (code == 0x4b6) || - (code == 0x4b8) || - (code == 0x4ba) || - (code == 0x4bc) || - (code == 0x4be) || - ((code >= 0x4c0) && (code <= 0x4c1)) || - (code == 0x4c3) || - (code == 0x4c7) || - (code == 0x4cb) || - (code == 0x4d0) || - (code == 0x4d2) || - (code == 0x4d4) || - (code == 0x4d6) || - (code == 0x4d8) || - (code == 0x4da) || - (code == 0x4dc) || - (code == 0x4de) || - (code == 0x4e0) || - (code == 0x4e2) || - (code == 0x4e4) || - (code == 0x4e6) || - (code == 0x4e8) || - (code == 0x4ea) || - (code == 0x4ec) || - (code == 0x4ee) || - (code == 0x4f0) || - (code == 0x4f2) || - (code == 0x4f4) || - (code == 0x4f8) || - ((code >= 0x531) && (code <= 0x556)) || - ((code >= 0x10a0) && (code <= 0x10c5)) || - (code == 0x1e00) || - (code == 0x1e02) || - (code == 0x1e04) || - (code == 0x1e06) || - (code == 0x1e08) || - (code == 0x1e0a) || - (code == 0x1e0c) || - (code == 0x1e0e) || - (code == 0x1e10) || - (code == 0x1e12) || - (code == 0x1e14) || - (code == 0x1e16) || - (code == 0x1e18) || - (code == 0x1e1a) || - (code == 0x1e1c) || - (code == 0x1e1e) || - (code == 0x1e20) || - (code == 0x1e22) || - (code == 0x1e24) || - (code == 0x1e26) || - (code == 0x1e28) || - (code == 0x1e2a) || - (code == 0x1e2c) || - (code == 0x1e2e) || - (code == 0x1e30) || - (code == 0x1e32) || - (code == 0x1e34) || - (code == 0x1e36) || - (code == 0x1e38) || - (code == 0x1e3a) || - (code == 0x1e3c) || - (code == 0x1e3e) || - (code == 0x1e40) || - (code == 0x1e42) || - (code == 0x1e44) || - (code == 0x1e46) || - (code == 0x1e48) || - (code == 0x1e4a) || - (code == 0x1e4c) || - (code == 0x1e4e) || - (code == 0x1e50) || - (code == 0x1e52) || - (code == 0x1e54) || - (code == 0x1e56) || - (code == 0x1e58) || - (code == 0x1e5a) || - (code == 0x1e5c) || - (code == 0x1e5e) || - (code == 0x1e60) || - (code == 0x1e62) || - (code == 0x1e64) || - (code == 0x1e66) || - (code == 0x1e68) || - (code == 0x1e6a) || - (code == 0x1e6c) || - (code == 0x1e6e) || - (code == 0x1e70) || - (code == 0x1e72) || - (code == 0x1e74) || - (code == 0x1e76) || - (code == 0x1e78) || - (code == 0x1e7a) || - (code == 0x1e7c) || - (code == 0x1e7e) || - (code == 0x1e80) || - (code == 0x1e82) || - (code == 0x1e84) || - (code == 0x1e86) || - (code == 0x1e88) || - (code == 0x1e8a) || - (code == 0x1e8c) || - (code == 0x1e8e) || - (code == 0x1e90) || - (code == 0x1e92) || - (code == 0x1e94) || - (code == 0x1ea0) || - (code == 0x1ea2) || - (code == 0x1ea4) || - (code == 0x1ea6) || - (code == 0x1ea8) || - (code == 0x1eaa) || - (code == 0x1eac) || - (code == 0x1eae) || - (code == 0x1eb0) || - (code == 0x1eb2) || - (code == 0x1eb4) || - (code == 0x1eb6) || - (code == 0x1eb8) || - (code == 0x1eba) || - (code == 0x1ebc) || - (code == 0x1ebe) || - (code == 0x1ec0) || - (code == 0x1ec2) || - (code == 0x1ec4) || - (code == 0x1ec6) || - (code == 0x1ec8) || - (code == 0x1eca) || - (code == 0x1ecc) || - (code == 0x1ece) || - (code == 0x1ed0) || - (code == 0x1ed2) || - (code == 0x1ed4) || - (code == 0x1ed6) || - (code == 0x1ed8) || - (code == 0x1eda) || - (code == 0x1edc) || - (code == 0x1ede) || - (code == 0x1ee0) || - (code == 0x1ee2) || - (code == 0x1ee4) || - (code == 0x1ee6) || - (code == 0x1ee8) || - (code == 0x1eea) || - (code == 0x1eec) || - (code == 0x1eee) || - (code == 0x1ef0) || - (code == 0x1ef2) || - (code == 0x1ef4) || - (code == 0x1ef6) || - (code == 0x1ef8) || - ((code >= 0x1f08) && (code <= 0x1f0f)) || - ((code >= 0x1f18) && (code <= 0x1f1d)) || - ((code >= 0x1f28) && (code <= 0x1f2f)) || - ((code >= 0x1f38) && (code <= 0x1f3f)) || - ((code >= 0x1f48) && (code <= 0x1f4d)) || - (code == 0x1f59) || - (code == 0x1f5b) || - (code == 0x1f5d) || - (code == 0x1f5f) || - ((code >= 0x1f68) && (code <= 0x1f6f)) || - ((code >= 0x1fb8) && (code <= 0x1fbb)) || - ((code >= 0x1fc8) && (code <= 0x1fcb)) || - ((code >= 0x1fd8) && (code <= 0x1fdb)) || - ((code >= 0x1fe8) && (code <= 0x1fec)) || - ((code >= 0x1ff8) && (code <= 0x1ffb)) || - (code == 0x2102) || - (code == 0x2107) || - ((code >= 0x210b) && (code <= 0x210d)) || - ((code >= 0x2110) && (code <= 0x2112)) || - (code == 0x2115) || - ((code >= 0x2119) && (code <= 0x211d)) || - (code == 0x2124) || - (code == 0x2126) || - (code == 0x2128) || - ((code >= 0x212a) && (code <= 0x212d)) || - ((code >= 0x2130) && (code <= 0x2131)) || - (code == 0x2133) || - ((code >= 0xff21) && (code <= 0xff3a)) || - ((code >= 0x10400) && (code <= 0x10425)) || - ((code >= 0x1d400) && (code <= 0x1d419)) || - ((code >= 0x1d434) && (code <= 0x1d44d)) || - ((code >= 0x1d468) && (code <= 0x1d481)) || - (code == 0x1d49c) || - ((code >= 0x1d49e) && (code <= 0x1d49f)) || - (code == 0x1d4a2) || - ((code >= 0x1d4a5) && (code <= 0x1d4a6)) || - ((code >= 0x1d4a9) && (code <= 0x1d4ac)) || - ((code >= 0x1d4ae) && (code <= 0x1d4b5)) || - ((code >= 0x1d4d0) && (code <= 0x1d4e9)) || - ((code >= 0x1d504) && (code <= 0x1d505)) || - ((code >= 0x1d507) && (code <= 0x1d50a)) || - ((code >= 0x1d50d) && (code <= 0x1d514)) || - ((code >= 0x1d516) && (code <= 0x1d51c)) || - ((code >= 0x1d538) && (code <= 0x1d539)) || - ((code >= 0x1d53b) && (code <= 0x1d53e)) || - ((code >= 0x1d540) && (code <= 0x1d544)) || - (code == 0x1d546) || - ((code >= 0x1d54a) && (code <= 0x1d550)) || - ((code >= 0x1d56c) && (code <= 0x1d585)) || - ((code >= 0x1d5a0) && (code <= 0x1d5b9)) || - ((code >= 0x1d5d4) && (code <= 0x1d5ed)) || - ((code >= 0x1d608) && (code <= 0x1d621)) || - ((code >= 0x1d63c) && (code <= 0x1d655)) || - ((code >= 0x1d670) && (code <= 0x1d689)) || - ((code >= 0x1d6a8) && (code <= 0x1d6c0)) || - ((code >= 0x1d6e2) && (code <= 0x1d6fa)) || - ((code >= 0x1d71c) && (code <= 0x1d734)) || - ((code >= 0x1d756) && (code <= 0x1d76e)) || - ((code >= 0x1d790) && (code <= 0x1d7a8))); + return(xmlCharInRange((unsigned int)code, &xmlLuG)); } /** @@ -2984,111 +2764,7 @@ xmlUCSIsCatLu(int code) { */ int xmlUCSIsCatM(int code) { - return(((code >= 0x300) && (code <= 0x34e)) || - ((code >= 0x360) && (code <= 0x362)) || - ((code >= 0x483) && (code <= 0x486)) || - ((code >= 0x488) && (code <= 0x489)) || - ((code >= 0x591) && (code <= 0x5a1)) || - ((code >= 0x5a3) && (code <= 0x5b9)) || - ((code >= 0x5bb) && (code <= 0x5bd)) || - (code == 0x5bf) || - ((code >= 0x5c1) && (code <= 0x5c2)) || - (code == 0x5c4) || - ((code >= 0x64b) && (code <= 0x655)) || - (code == 0x670) || - ((code >= 0x6d6) && (code <= 0x6e4)) || - ((code >= 0x6e7) && (code <= 0x6e8)) || - ((code >= 0x6ea) && (code <= 0x6ed)) || - (code == 0x711) || - ((code >= 0x730) && (code <= 0x74a)) || - ((code >= 0x7a6) && (code <= 0x7b0)) || - ((code >= 0x901) && (code <= 0x903)) || - (code == 0x93c) || - ((code >= 0x93e) && (code <= 0x94d)) || - ((code >= 0x951) && (code <= 0x954)) || - ((code >= 0x962) && (code <= 0x963)) || - ((code >= 0x981) && (code <= 0x983)) || - (code == 0x9bc) || - ((code >= 0x9be) && (code <= 0x9c4)) || - ((code >= 0x9c7) && (code <= 0x9c8)) || - ((code >= 0x9cb) && (code <= 0x9cd)) || - (code == 0x9d7) || - ((code >= 0x9e2) && (code <= 0x9e3)) || - (code == 0xa02) || - (code == 0xa3c) || - ((code >= 0xa3e) && (code <= 0xa42)) || - ((code >= 0xa47) && (code <= 0xa48)) || - ((code >= 0xa4b) && (code <= 0xa4d)) || - ((code >= 0xa70) && (code <= 0xa71)) || - ((code >= 0xa81) && (code <= 0xa83)) || - (code == 0xabc) || - ((code >= 0xabe) && (code <= 0xac5)) || - ((code >= 0xac7) && (code <= 0xac9)) || - ((code >= 0xacb) && (code <= 0xacd)) || - ((code >= 0xb01) && (code <= 0xb03)) || - (code == 0xb3c) || - ((code >= 0xb3e) && (code <= 0xb43)) || - ((code >= 0xb47) && (code <= 0xb48)) || - ((code >= 0xb4b) && (code <= 0xb4d)) || - ((code >= 0xb56) && (code <= 0xb57)) || - ((code >= 0xb82) && (code <= 0xb83)) || - ((code >= 0xbbe) && (code <= 0xbc2)) || - ((code >= 0xbc6) && (code <= 0xbc8)) || - ((code >= 0xbca) && (code <= 0xbcd)) || - (code == 0xbd7) || - ((code >= 0xc01) && (code <= 0xc03)) || - ((code >= 0xc3e) && (code <= 0xc44)) || - ((code >= 0xc46) && (code <= 0xc48)) || - ((code >= 0xc4a) && (code <= 0xc4d)) || - ((code >= 0xc55) && (code <= 0xc56)) || - ((code >= 0xc82) && (code <= 0xc83)) || - ((code >= 0xcbe) && (code <= 0xcc4)) || - ((code >= 0xcc6) && (code <= 0xcc8)) || - ((code >= 0xcca) && (code <= 0xccd)) || - ((code >= 0xcd5) && (code <= 0xcd6)) || - ((code >= 0xd02) && (code <= 0xd03)) || - ((code >= 0xd3e) && (code <= 0xd43)) || - ((code >= 0xd46) && (code <= 0xd48)) || - ((code >= 0xd4a) && (code <= 0xd4d)) || - (code == 0xd57) || - ((code >= 0xd82) && (code <= 0xd83)) || - (code == 0xdca) || - ((code >= 0xdcf) && (code <= 0xdd4)) || - (code == 0xdd6) || - ((code >= 0xdd8) && (code <= 0xddf)) || - ((code >= 0xdf2) && (code <= 0xdf3)) || - (code == 0xe31) || - ((code >= 0xe34) && (code <= 0xe3a)) || - ((code >= 0xe47) && (code <= 0xe4e)) || - (code == 0xeb1) || - ((code >= 0xeb4) && (code <= 0xeb9)) || - ((code >= 0xebb) && (code <= 0xebc)) || - ((code >= 0xec8) && (code <= 0xecd)) || - ((code >= 0xf18) && (code <= 0xf19)) || - (code == 0xf35) || - (code == 0xf37) || - (code == 0xf39) || - ((code >= 0xf3e) && (code <= 0xf3f)) || - ((code >= 0xf71) && (code <= 0xf84)) || - ((code >= 0xf86) && (code <= 0xf87)) || - ((code >= 0xf90) && (code <= 0xf97)) || - ((code >= 0xf99) && (code <= 0xfbc)) || - (code == 0xfc6) || - ((code >= 0x102c) && (code <= 0x1032)) || - ((code >= 0x1036) && (code <= 0x1039)) || - ((code >= 0x1056) && (code <= 0x1059)) || - ((code >= 0x17b4) && (code <= 0x17d3)) || - (code == 0x18a9) || - ((code >= 0x20d0) && (code <= 0x20e3)) || - ((code >= 0x302a) && (code <= 0x302f)) || - ((code >= 0x3099) && (code <= 0x309a)) || - (code == 0xfb1e) || - ((code >= 0xfe20) && (code <= 0xfe23)) || - ((code >= 0x1d165) && (code <= 0x1d169)) || - ((code >= 0x1d16d) && (code <= 0x1d172)) || - ((code >= 0x1d17b) && (code <= 0x1d182)) || - ((code >= 0x1d185) && (code <= 0x1d18b)) || - ((code >= 0x1d1aa) && (code <= 0x1d1ad))); + return(xmlCharInRange((unsigned int)code, &xmlMG)); } /** @@ -3101,59 +2777,7 @@ xmlUCSIsCatM(int code) { */ int xmlUCSIsCatMc(int code) { - return((code == 0x903) || - ((code >= 0x93e) && (code <= 0x940)) || - ((code >= 0x949) && (code <= 0x94c)) || - ((code >= 0x982) && (code <= 0x983)) || - ((code >= 0x9be) && (code <= 0x9c0)) || - ((code >= 0x9c7) && (code <= 0x9c8)) || - ((code >= 0x9cb) && (code <= 0x9cc)) || - (code == 0x9d7) || - ((code >= 0xa3e) && (code <= 0xa40)) || - (code == 0xa83) || - ((code >= 0xabe) && (code <= 0xac0)) || - (code == 0xac9) || - ((code >= 0xacb) && (code <= 0xacc)) || - ((code >= 0xb02) && (code <= 0xb03)) || - (code == 0xb3e) || - (code == 0xb40) || - ((code >= 0xb47) && (code <= 0xb48)) || - ((code >= 0xb4b) && (code <= 0xb4c)) || - (code == 0xb57) || - (code == 0xb83) || - ((code >= 0xbbe) && (code <= 0xbbf)) || - ((code >= 0xbc1) && (code <= 0xbc2)) || - ((code >= 0xbc6) && (code <= 0xbc8)) || - ((code >= 0xbca) && (code <= 0xbcc)) || - (code == 0xbd7) || - ((code >= 0xc01) && (code <= 0xc03)) || - ((code >= 0xc41) && (code <= 0xc44)) || - ((code >= 0xc82) && (code <= 0xc83)) || - (code == 0xcbe) || - ((code >= 0xcc0) && (code <= 0xcc4)) || - ((code >= 0xcc7) && (code <= 0xcc8)) || - ((code >= 0xcca) && (code <= 0xccb)) || - ((code >= 0xcd5) && (code <= 0xcd6)) || - ((code >= 0xd02) && (code <= 0xd03)) || - ((code >= 0xd3e) && (code <= 0xd40)) || - ((code >= 0xd46) && (code <= 0xd48)) || - ((code >= 0xd4a) && (code <= 0xd4c)) || - (code == 0xd57) || - ((code >= 0xd82) && (code <= 0xd83)) || - ((code >= 0xdcf) && (code <= 0xdd1)) || - ((code >= 0xdd8) && (code <= 0xddf)) || - ((code >= 0xdf2) && (code <= 0xdf3)) || - ((code >= 0xf3e) && (code <= 0xf3f)) || - (code == 0xf7f) || - (code == 0x102c) || - (code == 0x1031) || - (code == 0x1038) || - ((code >= 0x1056) && (code <= 0x1057)) || - ((code >= 0x17b4) && (code <= 0x17b6)) || - ((code >= 0x17be) && (code <= 0x17c5)) || - ((code >= 0x17c7) && (code <= 0x17c8)) || - ((code >= 0x1d165) && (code <= 0x1d166)) || - ((code >= 0x1d16d) && (code <= 0x1d172))); + return(xmlCharInRange((unsigned int)code, &xmlMcG)); } /** @@ -3167,9 +2791,9 @@ xmlUCSIsCatMc(int code) { int xmlUCSIsCatMe(int code) { return(((code >= 0x488) && (code <= 0x489)) || - ((code >= 0x6dd) && (code <= 0x6de)) || + (code == 0x6de) || ((code >= 0x20dd) && (code <= 0x20e0)) || - ((code >= 0x20e2) && (code <= 0x20e3))); + ((code >= 0x20e2) && (code <= 0x20e4))); } /** @@ -3182,103 +2806,7 @@ xmlUCSIsCatMe(int code) { */ int xmlUCSIsCatMn(int code) { - return(((code >= 0x300) && (code <= 0x34e)) || - ((code >= 0x360) && (code <= 0x362)) || - ((code >= 0x483) && (code <= 0x486)) || - ((code >= 0x591) && (code <= 0x5a1)) || - ((code >= 0x5a3) && (code <= 0x5b9)) || - ((code >= 0x5bb) && (code <= 0x5bd)) || - (code == 0x5bf) || - ((code >= 0x5c1) && (code <= 0x5c2)) || - (code == 0x5c4) || - ((code >= 0x64b) && (code <= 0x655)) || - (code == 0x670) || - ((code >= 0x6d6) && (code <= 0x6dc)) || - ((code >= 0x6df) && (code <= 0x6e4)) || - ((code >= 0x6e7) && (code <= 0x6e8)) || - ((code >= 0x6ea) && (code <= 0x6ed)) || - (code == 0x711) || - ((code >= 0x730) && (code <= 0x74a)) || - ((code >= 0x7a6) && (code <= 0x7b0)) || - ((code >= 0x901) && (code <= 0x902)) || - (code == 0x93c) || - ((code >= 0x941) && (code <= 0x948)) || - (code == 0x94d) || - ((code >= 0x951) && (code <= 0x954)) || - ((code >= 0x962) && (code <= 0x963)) || - (code == 0x981) || - (code == 0x9bc) || - ((code >= 0x9c1) && (code <= 0x9c4)) || - (code == 0x9cd) || - ((code >= 0x9e2) && (code <= 0x9e3)) || - (code == 0xa02) || - (code == 0xa3c) || - ((code >= 0xa41) && (code <= 0xa42)) || - ((code >= 0xa47) && (code <= 0xa48)) || - ((code >= 0xa4b) && (code <= 0xa4d)) || - ((code >= 0xa70) && (code <= 0xa71)) || - ((code >= 0xa81) && (code <= 0xa82)) || - (code == 0xabc) || - ((code >= 0xac1) && (code <= 0xac5)) || - ((code >= 0xac7) && (code <= 0xac8)) || - (code == 0xacd) || - (code == 0xb01) || - (code == 0xb3c) || - (code == 0xb3f) || - ((code >= 0xb41) && (code <= 0xb43)) || - (code == 0xb4d) || - (code == 0xb56) || - (code == 0xb82) || - (code == 0xbc0) || - (code == 0xbcd) || - ((code >= 0xc3e) && (code <= 0xc40)) || - ((code >= 0xc46) && (code <= 0xc48)) || - ((code >= 0xc4a) && (code <= 0xc4d)) || - ((code >= 0xc55) && (code <= 0xc56)) || - (code == 0xcbf) || - (code == 0xcc6) || - ((code >= 0xccc) && (code <= 0xccd)) || - ((code >= 0xd41) && (code <= 0xd43)) || - (code == 0xd4d) || - (code == 0xdca) || - ((code >= 0xdd2) && (code <= 0xdd4)) || - (code == 0xdd6) || - (code == 0xe31) || - ((code >= 0xe34) && (code <= 0xe3a)) || - ((code >= 0xe47) && (code <= 0xe4e)) || - (code == 0xeb1) || - ((code >= 0xeb4) && (code <= 0xeb9)) || - ((code >= 0xebb) && (code <= 0xebc)) || - ((code >= 0xec8) && (code <= 0xecd)) || - ((code >= 0xf18) && (code <= 0xf19)) || - (code == 0xf35) || - (code == 0xf37) || - (code == 0xf39) || - ((code >= 0xf71) && (code <= 0xf7e)) || - ((code >= 0xf80) && (code <= 0xf84)) || - ((code >= 0xf86) && (code <= 0xf87)) || - ((code >= 0xf90) && (code <= 0xf97)) || - ((code >= 0xf99) && (code <= 0xfbc)) || - (code == 0xfc6) || - ((code >= 0x102d) && (code <= 0x1030)) || - (code == 0x1032) || - ((code >= 0x1036) && (code <= 0x1037)) || - (code == 0x1039) || - ((code >= 0x1058) && (code <= 0x1059)) || - ((code >= 0x17b7) && (code <= 0x17bd)) || - (code == 0x17c6) || - ((code >= 0x17c9) && (code <= 0x17d3)) || - (code == 0x18a9) || - ((code >= 0x20d0) && (code <= 0x20dc)) || - (code == 0x20e1) || - ((code >= 0x302a) && (code <= 0x302f)) || - ((code >= 0x3099) && (code <= 0x309a)) || - (code == 0xfb1e) || - ((code >= 0xfe20) && (code <= 0xfe23)) || - ((code >= 0x1d167) && (code <= 0x1d169)) || - ((code >= 0x1d17b) && (code <= 0x1d182)) || - ((code >= 0x1d185) && (code <= 0x1d18b)) || - ((code >= 0x1d1aa) && (code <= 0x1d1ad))); + return(xmlCharInRange((unsigned int)code, &xmlMnG)); } /** @@ -3291,47 +2819,7 @@ xmlUCSIsCatMn(int code) { */ int xmlUCSIsCatN(int code) { - return(((code >= 0x30) && (code <= 0x39)) || - ((code >= 0xb2) && (code <= 0xb3)) || - (code == 0xb9) || - ((code >= 0xbc) && (code <= 0xbe)) || - ((code >= 0x660) && (code <= 0x669)) || - ((code >= 0x6f0) && (code <= 0x6f9)) || - ((code >= 0x966) && (code <= 0x96f)) || - ((code >= 0x9e6) && (code <= 0x9ef)) || - ((code >= 0x9f4) && (code <= 0x9f9)) || - ((code >= 0xa66) && (code <= 0xa6f)) || - ((code >= 0xae6) && (code <= 0xaef)) || - ((code >= 0xb66) && (code <= 0xb6f)) || - ((code >= 0xbe7) && (code <= 0xbf2)) || - ((code >= 0xc66) && (code <= 0xc6f)) || - ((code >= 0xce6) && (code <= 0xcef)) || - ((code >= 0xd66) && (code <= 0xd6f)) || - ((code >= 0xe50) && (code <= 0xe59)) || - ((code >= 0xed0) && (code <= 0xed9)) || - ((code >= 0xf20) && (code <= 0xf33)) || - ((code >= 0x1040) && (code <= 0x1049)) || - ((code >= 0x1369) && (code <= 0x137c)) || - ((code >= 0x16ee) && (code <= 0x16f0)) || - ((code >= 0x17e0) && (code <= 0x17e9)) || - ((code >= 0x1810) && (code <= 0x1819)) || - (code == 0x2070) || - ((code >= 0x2074) && (code <= 0x2079)) || - ((code >= 0x2080) && (code <= 0x2089)) || - ((code >= 0x2153) && (code <= 0x2183)) || - ((code >= 0x2460) && (code <= 0x249b)) || - (code == 0x24ea) || - ((code >= 0x2776) && (code <= 0x2793)) || - (code == 0x3007) || - ((code >= 0x3021) && (code <= 0x3029)) || - ((code >= 0x3038) && (code <= 0x303a)) || - ((code >= 0x3192) && (code <= 0x3195)) || - ((code >= 0x3220) && (code <= 0x3229)) || - ((code >= 0x3280) && (code <= 0x3289)) || - ((code >= 0xff10) && (code <= 0xff19)) || - ((code >= 0x10320) && (code <= 0x10323)) || - (code == 0x1034a) || - ((code >= 0x1d7ce) && (code <= 0x1d7ff))); + return(xmlCharInRange((unsigned int)code, &xmlNG)); } /** @@ -3344,27 +2832,7 @@ xmlUCSIsCatN(int code) { */ int xmlUCSIsCatNd(int code) { - return(((code >= 0x30) && (code <= 0x39)) || - ((code >= 0x660) && (code <= 0x669)) || - ((code >= 0x6f0) && (code <= 0x6f9)) || - ((code >= 0x966) && (code <= 0x96f)) || - ((code >= 0x9e6) && (code <= 0x9ef)) || - ((code >= 0xa66) && (code <= 0xa6f)) || - ((code >= 0xae6) && (code <= 0xaef)) || - ((code >= 0xb66) && (code <= 0xb6f)) || - ((code >= 0xbe7) && (code <= 0xbef)) || - ((code >= 0xc66) && (code <= 0xc6f)) || - ((code >= 0xce6) && (code <= 0xcef)) || - ((code >= 0xd66) && (code <= 0xd6f)) || - ((code >= 0xe50) && (code <= 0xe59)) || - ((code >= 0xed0) && (code <= 0xed9)) || - ((code >= 0xf20) && (code <= 0xf29)) || - ((code >= 0x1040) && (code <= 0x1049)) || - ((code >= 0x1369) && (code <= 0x1371)) || - ((code >= 0x17e0) && (code <= 0x17e9)) || - ((code >= 0x1810) && (code <= 0x1819)) || - ((code >= 0xff10) && (code <= 0xff19)) || - ((code >= 0x1d7ce) && (code <= 0x1d7ff))); + return(xmlCharInRange((unsigned int)code, &xmlNdG)); } /** @@ -3395,24 +2863,7 @@ xmlUCSIsCatNl(int code) { */ int xmlUCSIsCatNo(int code) { - return(((code >= 0xb2) && (code <= 0xb3)) || - (code == 0xb9) || - ((code >= 0xbc) && (code <= 0xbe)) || - ((code >= 0x9f4) && (code <= 0x9f9)) || - ((code >= 0xbf0) && (code <= 0xbf2)) || - ((code >= 0xf2a) && (code <= 0xf33)) || - ((code >= 0x1372) && (code <= 0x137c)) || - (code == 0x2070) || - ((code >= 0x2074) && (code <= 0x2079)) || - ((code >= 0x2080) && (code <= 0x2089)) || - ((code >= 0x2153) && (code <= 0x215f)) || - ((code >= 0x2460) && (code <= 0x249b)) || - (code == 0x24ea) || - ((code >= 0x2776) && (code <= 0x2793)) || - ((code >= 0x3192) && (code <= 0x3195)) || - ((code >= 0x3220) && (code <= 0x3229)) || - ((code >= 0x3280) && (code <= 0x3289)) || - ((code >= 0x10320) && (code <= 0x10323))); + return(xmlCharInRange((unsigned int)code, &xmlNoG)); } /** @@ -3425,81 +2876,7 @@ xmlUCSIsCatNo(int code) { */ int xmlUCSIsCatP(int code) { - return(((code >= 0x21) && (code <= 0x23)) || - ((code >= 0x25) && (code <= 0x2a)) || - ((code >= 0x2c) && (code <= 0x2f)) || - ((code >= 0x3a) && (code <= 0x3b)) || - ((code >= 0x3f) && (code <= 0x40)) || - ((code >= 0x5b) && (code <= 0x5d)) || - (code == 0x5f) || - (code == 0x7b) || - (code == 0x7d) || - (code == 0xa1) || - (code == 0xab) || - (code == 0xad) || - (code == 0xb7) || - (code == 0xbb) || - (code == 0xbf) || - (code == 0x37e) || - (code == 0x387) || - ((code >= 0x55a) && (code <= 0x55f)) || - ((code >= 0x589) && (code <= 0x58a)) || - (code == 0x5be) || - (code == 0x5c0) || - (code == 0x5c3) || - ((code >= 0x5f3) && (code <= 0x5f4)) || - (code == 0x60c) || - (code == 0x61b) || - (code == 0x61f) || - ((code >= 0x66a) && (code <= 0x66d)) || - (code == 0x6d4) || - ((code >= 0x700) && (code <= 0x70d)) || - ((code >= 0x964) && (code <= 0x965)) || - (code == 0x970) || - (code == 0xdf4) || - (code == 0xe4f) || - ((code >= 0xe5a) && (code <= 0xe5b)) || - ((code >= 0xf04) && (code <= 0xf12)) || - ((code >= 0xf3a) && (code <= 0xf3d)) || - (code == 0xf85) || - ((code >= 0x104a) && (code <= 0x104f)) || - (code == 0x10fb) || - ((code >= 0x1361) && (code <= 0x1368)) || - ((code >= 0x166d) && (code <= 0x166e)) || - ((code >= 0x169b) && (code <= 0x169c)) || - ((code >= 0x16eb) && (code <= 0x16ed)) || - ((code >= 0x17d4) && (code <= 0x17da)) || - (code == 0x17dc) || - ((code >= 0x1800) && (code <= 0x180a)) || - ((code >= 0x2010) && (code <= 0x2027)) || - ((code >= 0x2030) && (code <= 0x2043)) || - ((code >= 0x2045) && (code <= 0x2046)) || - ((code >= 0x2048) && (code <= 0x204d)) || - ((code >= 0x207d) && (code <= 0x207e)) || - ((code >= 0x208d) && (code <= 0x208e)) || - ((code >= 0x2329) && (code <= 0x232a)) || - ((code >= 0x3001) && (code <= 0x3003)) || - ((code >= 0x3008) && (code <= 0x3011)) || - ((code >= 0x3014) && (code <= 0x301f)) || - (code == 0x3030) || - (code == 0x30fb) || - ((code >= 0xfd3e) && (code <= 0xfd3f)) || - ((code >= 0xfe30) && (code <= 0xfe44)) || - ((code >= 0xfe49) && (code <= 0xfe52)) || - ((code >= 0xfe54) && (code <= 0xfe61)) || - (code == 0xfe63) || - (code == 0xfe68) || - ((code >= 0xfe6a) && (code <= 0xfe6b)) || - ((code >= 0xff01) && (code <= 0xff03)) || - ((code >= 0xff05) && (code <= 0xff0a)) || - ((code >= 0xff0c) && (code <= 0xff0f)) || - ((code >= 0xff1a) && (code <= 0xff1b)) || - ((code >= 0xff1f) && (code <= 0xff20)) || - ((code >= 0xff3b) && (code <= 0xff3d)) || - (code == 0xff3f) || - (code == 0xff5b) || - (code == 0xff5d) || - ((code >= 0xff61) && (code <= 0xff65))); + return(xmlCharInRange((unsigned int)code, &xmlPG)); } /** @@ -3514,6 +2891,7 @@ int xmlUCSIsCatPc(int code) { return((code == 0x5f) || ((code >= 0x203f) && (code <= 0x2040)) || + (code == 0x2054) || (code == 0x30fb) || ((code >= 0xfe33) && (code <= 0xfe34)) || ((code >= 0xfe4d) && (code <= 0xfe4f)) || @@ -3531,17 +2909,7 @@ xmlUCSIsCatPc(int code) { */ int xmlUCSIsCatPd(int code) { - return((code == 0x2d) || - (code == 0xad) || - (code == 0x58a) || - (code == 0x1806) || - ((code >= 0x2010) && (code <= 0x2015)) || - (code == 0x301c) || - (code == 0x3030) || - ((code >= 0xfe31) && (code <= 0xfe32)) || - (code == 0xfe58) || - (code == 0xfe63) || - (code == 0xff0d)); + return(xmlCharInRange((unsigned int)code, &xmlPdG)); } /** @@ -3554,42 +2922,7 @@ xmlUCSIsCatPd(int code) { */ int xmlUCSIsCatPe(int code) { - return((code == 0x29) || - (code == 0x5d) || - (code == 0x7d) || - (code == 0xf3b) || - (code == 0xf3d) || - (code == 0x169c) || - (code == 0x2046) || - (code == 0x207e) || - (code == 0x208e) || - (code == 0x232a) || - (code == 0x3009) || - (code == 0x300b) || - (code == 0x300d) || - (code == 0x300f) || - (code == 0x3011) || - (code == 0x3015) || - (code == 0x3017) || - (code == 0x3019) || - (code == 0x301b) || - ((code >= 0x301e) && (code <= 0x301f)) || - (code == 0xfd3f) || - (code == 0xfe36) || - (code == 0xfe38) || - (code == 0xfe3a) || - (code == 0xfe3c) || - (code == 0xfe3e) || - (code == 0xfe40) || - (code == 0xfe42) || - (code == 0xfe44) || - (code == 0xfe5a) || - (code == 0xfe5c) || - (code == 0xfe5e) || - (code == 0xff09) || - (code == 0xff3d) || - (code == 0xff5d) || - (code == 0xff63)); + return(xmlCharInRange((unsigned int)code, &xmlPeG)); } /** @@ -3635,71 +2968,7 @@ xmlUCSIsCatPi(int code) { */ int xmlUCSIsCatPo(int code) { - return(((code >= 0x21) && (code <= 0x23)) || - ((code >= 0x25) && (code <= 0x27)) || - (code == 0x2a) || - (code == 0x2c) || - ((code >= 0x2e) && (code <= 0x2f)) || - ((code >= 0x3a) && (code <= 0x3b)) || - ((code >= 0x3f) && (code <= 0x40)) || - (code == 0x5c) || - (code == 0xa1) || - (code == 0xb7) || - (code == 0xbf) || - (code == 0x37e) || - (code == 0x387) || - ((code >= 0x55a) && (code <= 0x55f)) || - (code == 0x589) || - (code == 0x5be) || - (code == 0x5c0) || - (code == 0x5c3) || - ((code >= 0x5f3) && (code <= 0x5f4)) || - (code == 0x60c) || - (code == 0x61b) || - (code == 0x61f) || - ((code >= 0x66a) && (code <= 0x66d)) || - (code == 0x6d4) || - ((code >= 0x700) && (code <= 0x70d)) || - ((code >= 0x964) && (code <= 0x965)) || - (code == 0x970) || - (code == 0xdf4) || - (code == 0xe4f) || - ((code >= 0xe5a) && (code <= 0xe5b)) || - ((code >= 0xf04) && (code <= 0xf12)) || - (code == 0xf85) || - ((code >= 0x104a) && (code <= 0x104f)) || - (code == 0x10fb) || - ((code >= 0x1361) && (code <= 0x1368)) || - ((code >= 0x166d) && (code <= 0x166e)) || - ((code >= 0x16eb) && (code <= 0x16ed)) || - ((code >= 0x17d4) && (code <= 0x17da)) || - (code == 0x17dc) || - ((code >= 0x1800) && (code <= 0x1805)) || - ((code >= 0x1807) && (code <= 0x180a)) || - ((code >= 0x2016) && (code <= 0x2017)) || - ((code >= 0x2020) && (code <= 0x2027)) || - ((code >= 0x2030) && (code <= 0x2038)) || - ((code >= 0x203b) && (code <= 0x203e)) || - ((code >= 0x2041) && (code <= 0x2043)) || - ((code >= 0x2048) && (code <= 0x204d)) || - ((code >= 0x3001) && (code <= 0x3003)) || - (code == 0xfe30) || - ((code >= 0xfe49) && (code <= 0xfe4c)) || - ((code >= 0xfe50) && (code <= 0xfe52)) || - ((code >= 0xfe54) && (code <= 0xfe57)) || - ((code >= 0xfe5f) && (code <= 0xfe61)) || - (code == 0xfe68) || - ((code >= 0xfe6a) && (code <= 0xfe6b)) || - ((code >= 0xff01) && (code <= 0xff03)) || - ((code >= 0xff05) && (code <= 0xff07)) || - (code == 0xff0a) || - (code == 0xff0c) || - ((code >= 0xff0e) && (code <= 0xff0f)) || - ((code >= 0xff1a) && (code <= 0xff1b)) || - ((code >= 0xff1f) && (code <= 0xff20)) || - (code == 0xff3c) || - (code == 0xff61) || - (code == 0xff64)); + return(xmlCharInRange((unsigned int)code, &xmlPoG)); } /** @@ -3712,44 +2981,7 @@ xmlUCSIsCatPo(int code) { */ int xmlUCSIsCatPs(int code) { - return((code == 0x28) || - (code == 0x5b) || - (code == 0x7b) || - (code == 0xf3a) || - (code == 0xf3c) || - (code == 0x169b) || - (code == 0x201a) || - (code == 0x201e) || - (code == 0x2045) || - (code == 0x207d) || - (code == 0x208d) || - (code == 0x2329) || - (code == 0x3008) || - (code == 0x300a) || - (code == 0x300c) || - (code == 0x300e) || - (code == 0x3010) || - (code == 0x3014) || - (code == 0x3016) || - (code == 0x3018) || - (code == 0x301a) || - (code == 0x301d) || - (code == 0xfd3e) || - (code == 0xfe35) || - (code == 0xfe37) || - (code == 0xfe39) || - (code == 0xfe3b) || - (code == 0xfe3d) || - (code == 0xfe3f) || - (code == 0xfe41) || - (code == 0xfe43) || - (code == 0xfe59) || - (code == 0xfe5b) || - (code == 0xfe5d) || - (code == 0xff08) || - (code == 0xff3b) || - (code == 0xff5b) || - (code == 0xff62)); + return(xmlCharInRange((unsigned int)code, &xmlPsG)); } /** @@ -3762,149 +2994,7 @@ xmlUCSIsCatPs(int code) { */ int xmlUCSIsCatS(int code) { - return((code == 0x24) || - (code == 0x2b) || - ((code >= 0x3c) && (code <= 0x3e)) || - (code == 0x5e) || - (code == 0x60) || - (code == 0x7c) || - (code == 0x7e) || - ((code >= 0xa2) && (code <= 0xa9)) || - (code == 0xac) || - ((code >= 0xae) && (code <= 0xb1)) || - (code == 0xb4) || - (code == 0xb6) || - (code == 0xb8) || - (code == 0xd7) || - (code == 0xf7) || - ((code >= 0x2b9) && (code <= 0x2ba)) || - ((code >= 0x2c2) && (code <= 0x2cf)) || - ((code >= 0x2d2) && (code <= 0x2df)) || - ((code >= 0x2e5) && (code <= 0x2ed)) || - ((code >= 0x374) && (code <= 0x375)) || - ((code >= 0x384) && (code <= 0x385)) || - (code == 0x482) || - (code == 0x6e9) || - ((code >= 0x6fd) && (code <= 0x6fe)) || - ((code >= 0x9f2) && (code <= 0x9f3)) || - (code == 0x9fa) || - (code == 0xb70) || - (code == 0xe3f) || - ((code >= 0xf01) && (code <= 0xf03)) || - ((code >= 0xf13) && (code <= 0xf17)) || - ((code >= 0xf1a) && (code <= 0xf1f)) || - (code == 0xf34) || - (code == 0xf36) || - (code == 0xf38) || - ((code >= 0xfbe) && (code <= 0xfc5)) || - ((code >= 0xfc7) && (code <= 0xfcc)) || - (code == 0xfcf) || - (code == 0x17db) || - (code == 0x1fbd) || - ((code >= 0x1fbf) && (code <= 0x1fc1)) || - ((code >= 0x1fcd) && (code <= 0x1fcf)) || - ((code >= 0x1fdd) && (code <= 0x1fdf)) || - ((code >= 0x1fed) && (code <= 0x1fef)) || - ((code >= 0x1ffd) && (code <= 0x1ffe)) || - (code == 0x2044) || - ((code >= 0x207a) && (code <= 0x207c)) || - ((code >= 0x208a) && (code <= 0x208c)) || - ((code >= 0x20a0) && (code <= 0x20af)) || - ((code >= 0x2100) && (code <= 0x2101)) || - ((code >= 0x2103) && (code <= 0x2106)) || - ((code >= 0x2108) && (code <= 0x2109)) || - (code == 0x2114) || - ((code >= 0x2116) && (code <= 0x2118)) || - ((code >= 0x211e) && (code <= 0x2123)) || - (code == 0x2125) || - (code == 0x2127) || - (code == 0x2129) || - (code == 0x212e) || - (code == 0x2132) || - (code == 0x213a) || - ((code >= 0x2190) && (code <= 0x21f3)) || - ((code >= 0x2200) && (code <= 0x22f1)) || - ((code >= 0x2300) && (code <= 0x2328)) || - ((code >= 0x232b) && (code <= 0x237b)) || - ((code >= 0x237d) && (code <= 0x239a)) || - ((code >= 0x2400) && (code <= 0x2426)) || - ((code >= 0x2440) && (code <= 0x244a)) || - ((code >= 0x249c) && (code <= 0x24e9)) || - ((code >= 0x2500) && (code <= 0x2595)) || - ((code >= 0x25a0) && (code <= 0x25f7)) || - ((code >= 0x2600) && (code <= 0x2613)) || - ((code >= 0x2619) && (code <= 0x2671)) || - ((code >= 0x2701) && (code <= 0x2704)) || - ((code >= 0x2706) && (code <= 0x2709)) || - ((code >= 0x270c) && (code <= 0x2727)) || - ((code >= 0x2729) && (code <= 0x274b)) || - (code == 0x274d) || - ((code >= 0x274f) && (code <= 0x2752)) || - (code == 0x2756) || - ((code >= 0x2758) && (code <= 0x275e)) || - ((code >= 0x2761) && (code <= 0x2767)) || - (code == 0x2794) || - ((code >= 0x2798) && (code <= 0x27af)) || - ((code >= 0x27b1) && (code <= 0x27be)) || - ((code >= 0x2800) && (code <= 0x28ff)) || - ((code >= 0x2e80) && (code <= 0x2e99)) || - ((code >= 0x2e9b) && (code <= 0x2ef3)) || - ((code >= 0x2f00) && (code <= 0x2fd5)) || - ((code >= 0x2ff0) && (code <= 0x2ffb)) || - (code == 0x3004) || - ((code >= 0x3012) && (code <= 0x3013)) || - (code == 0x3020) || - ((code >= 0x3036) && (code <= 0x3037)) || - ((code >= 0x303e) && (code <= 0x303f)) || - ((code >= 0x309b) && (code <= 0x309c)) || - ((code >= 0x3190) && (code <= 0x3191)) || - ((code >= 0x3196) && (code <= 0x319f)) || - ((code >= 0x3200) && (code <= 0x321c)) || - ((code >= 0x322a) && (code <= 0x3243)) || - ((code >= 0x3260) && (code <= 0x327b)) || - (code == 0x327f) || - ((code >= 0x328a) && (code <= 0x32b0)) || - ((code >= 0x32c0) && (code <= 0x32cb)) || - ((code >= 0x32d0) && (code <= 0x32fe)) || - ((code >= 0x3300) && (code <= 0x3376)) || - ((code >= 0x337b) && (code <= 0x33dd)) || - ((code >= 0x33e0) && (code <= 0x33fe)) || - ((code >= 0xa490) && (code <= 0xa4a1)) || - ((code >= 0xa4a4) && (code <= 0xa4b3)) || - ((code >= 0xa4b5) && (code <= 0xa4c0)) || - ((code >= 0xa4c2) && (code <= 0xa4c4)) || - (code == 0xa4c6) || - (code == 0xfb29) || - (code == 0xfe62) || - ((code >= 0xfe64) && (code <= 0xfe66)) || - (code == 0xfe69) || - (code == 0xff04) || - (code == 0xff0b) || - ((code >= 0xff1c) && (code <= 0xff1e)) || - (code == 0xff3e) || - (code == 0xff40) || - (code == 0xff5c) || - (code == 0xff5e) || - ((code >= 0xffe0) && (code <= 0xffe6)) || - ((code >= 0xffe8) && (code <= 0xffee)) || - ((code >= 0xfffc) && (code <= 0xfffd)) || - ((code >= 0x1d000) && (code <= 0x1d0f5)) || - ((code >= 0x1d100) && (code <= 0x1d126)) || - ((code >= 0x1d12a) && (code <= 0x1d164)) || - ((code >= 0x1d16a) && (code <= 0x1d16c)) || - ((code >= 0x1d183) && (code <= 0x1d184)) || - ((code >= 0x1d18c) && (code <= 0x1d1a9)) || - ((code >= 0x1d1ae) && (code <= 0x1d1dd)) || - (code == 0x1d6c1) || - (code == 0x1d6db) || - (code == 0x1d6fb) || - (code == 0x1d715) || - (code == 0x1d735) || - (code == 0x1d74f) || - (code == 0x1d76f) || - (code == 0x1d789) || - (code == 0x1d7a9) || - (code == 0x1d7c3)); + return(xmlCharInRange((unsigned int)code, &xmlSG)); } /** @@ -3917,16 +3007,7 @@ xmlUCSIsCatS(int code) { */ int xmlUCSIsCatSc(int code) { - return((code == 0x24) || - ((code >= 0xa2) && (code <= 0xa5)) || - ((code >= 0x9f2) && (code <= 0x9f3)) || - (code == 0xe3f) || - (code == 0x17db) || - ((code >= 0x20a0) && (code <= 0x20af)) || - (code == 0xfe69) || - (code == 0xff04) || - ((code >= 0xffe0) && (code <= 0xffe1)) || - ((code >= 0xffe5) && (code <= 0xffe6))); + return(xmlCharInRange((unsigned int)code, &xmlScG)); } /** @@ -3939,28 +3020,7 @@ xmlUCSIsCatSc(int code) { */ int xmlUCSIsCatSk(int code) { - return((code == 0x5e) || - (code == 0x60) || - (code == 0xa8) || - (code == 0xaf) || - (code == 0xb4) || - (code == 0xb8) || - ((code >= 0x2b9) && (code <= 0x2ba)) || - ((code >= 0x2c2) && (code <= 0x2cf)) || - ((code >= 0x2d2) && (code <= 0x2df)) || - ((code >= 0x2e5) && (code <= 0x2ed)) || - ((code >= 0x374) && (code <= 0x375)) || - ((code >= 0x384) && (code <= 0x385)) || - (code == 0x1fbd) || - ((code >= 0x1fbf) && (code <= 0x1fc1)) || - ((code >= 0x1fcd) && (code <= 0x1fcf)) || - ((code >= 0x1fdd) && (code <= 0x1fdf)) || - ((code >= 0x1fed) && (code <= 0x1fef)) || - ((code >= 0x1ffd) && (code <= 0x1ffe)) || - ((code >= 0x309b) && (code <= 0x309c)) || - (code == 0xff3e) || - (code == 0xff40) || - (code == 0xffe3)); + return(xmlCharInRange((unsigned int)code, &xmlSkG)); } /** @@ -3973,51 +3033,7 @@ xmlUCSIsCatSk(int code) { */ int xmlUCSIsCatSm(int code) { - return((code == 0x2b) || - ((code >= 0x3c) && (code <= 0x3e)) || - (code == 0x7c) || - (code == 0x7e) || - (code == 0xac) || - (code == 0xb1) || - (code == 0xd7) || - (code == 0xf7) || - (code == 0x2044) || - ((code >= 0x207a) && (code <= 0x207c)) || - ((code >= 0x208a) && (code <= 0x208c)) || - ((code >= 0x2190) && (code <= 0x2194)) || - ((code >= 0x219a) && (code <= 0x219b)) || - (code == 0x21a0) || - (code == 0x21a3) || - (code == 0x21a6) || - (code == 0x21ae) || - ((code >= 0x21ce) && (code <= 0x21cf)) || - (code == 0x21d2) || - (code == 0x21d4) || - ((code >= 0x2200) && (code <= 0x22f1)) || - ((code >= 0x2308) && (code <= 0x230b)) || - ((code >= 0x2320) && (code <= 0x2321)) || - (code == 0x25b7) || - (code == 0x25c1) || - (code == 0x266f) || - (code == 0xfb29) || - (code == 0xfe62) || - ((code >= 0xfe64) && (code <= 0xfe66)) || - (code == 0xff0b) || - ((code >= 0xff1c) && (code <= 0xff1e)) || - (code == 0xff5c) || - (code == 0xff5e) || - (code == 0xffe2) || - ((code >= 0xffe9) && (code <= 0xffec)) || - (code == 0x1d6c1) || - (code == 0x1d6db) || - (code == 0x1d6fb) || - (code == 0x1d715) || - (code == 0x1d735) || - (code == 0x1d74f) || - (code == 0x1d76f) || - (code == 0x1d789) || - (code == 0x1d7a9) || - (code == 0x1d7c3)); + return(xmlCharInRange((unsigned int)code, &xmlSmG)); } /** @@ -4030,111 +3046,7 @@ xmlUCSIsCatSm(int code) { */ int xmlUCSIsCatSo(int code) { - return(((code >= 0xa6) && (code <= 0xa7)) || - (code == 0xa9) || - (code == 0xae) || - (code == 0xb0) || - (code == 0xb6) || - (code == 0x482) || - (code == 0x6e9) || - ((code >= 0x6fd) && (code <= 0x6fe)) || - (code == 0x9fa) || - (code == 0xb70) || - ((code >= 0xf01) && (code <= 0xf03)) || - ((code >= 0xf13) && (code <= 0xf17)) || - ((code >= 0xf1a) && (code <= 0xf1f)) || - (code == 0xf34) || - (code == 0xf36) || - (code == 0xf38) || - ((code >= 0xfbe) && (code <= 0xfc5)) || - ((code >= 0xfc7) && (code <= 0xfcc)) || - (code == 0xfcf) || - ((code >= 0x2100) && (code <= 0x2101)) || - ((code >= 0x2103) && (code <= 0x2106)) || - ((code >= 0x2108) && (code <= 0x2109)) || - (code == 0x2114) || - ((code >= 0x2116) && (code <= 0x2118)) || - ((code >= 0x211e) && (code <= 0x2123)) || - (code == 0x2125) || - (code == 0x2127) || - (code == 0x2129) || - (code == 0x212e) || - (code == 0x2132) || - (code == 0x213a) || - ((code >= 0x2195) && (code <= 0x2199)) || - ((code >= 0x219c) && (code <= 0x219f)) || - ((code >= 0x21a1) && (code <= 0x21a2)) || - ((code >= 0x21a4) && (code <= 0x21a5)) || - ((code >= 0x21a7) && (code <= 0x21ad)) || - ((code >= 0x21af) && (code <= 0x21cd)) || - ((code >= 0x21d0) && (code <= 0x21d1)) || - (code == 0x21d3) || - ((code >= 0x21d5) && (code <= 0x21f3)) || - ((code >= 0x2300) && (code <= 0x2307)) || - ((code >= 0x230c) && (code <= 0x231f)) || - ((code >= 0x2322) && (code <= 0x2328)) || - ((code >= 0x232b) && (code <= 0x237b)) || - ((code >= 0x237d) && (code <= 0x239a)) || - ((code >= 0x2400) && (code <= 0x2426)) || - ((code >= 0x2440) && (code <= 0x244a)) || - ((code >= 0x249c) && (code <= 0x24e9)) || - ((code >= 0x2500) && (code <= 0x2595)) || - ((code >= 0x25a0) && (code <= 0x25b6)) || - ((code >= 0x25b8) && (code <= 0x25c0)) || - ((code >= 0x25c2) && (code <= 0x25f7)) || - ((code >= 0x2600) && (code <= 0x2613)) || - ((code >= 0x2619) && (code <= 0x266e)) || - ((code >= 0x2670) && (code <= 0x2671)) || - ((code >= 0x2701) && (code <= 0x2704)) || - ((code >= 0x2706) && (code <= 0x2709)) || - ((code >= 0x270c) && (code <= 0x2727)) || - ((code >= 0x2729) && (code <= 0x274b)) || - (code == 0x274d) || - ((code >= 0x274f) && (code <= 0x2752)) || - (code == 0x2756) || - ((code >= 0x2758) && (code <= 0x275e)) || - ((code >= 0x2761) && (code <= 0x2767)) || - (code == 0x2794) || - ((code >= 0x2798) && (code <= 0x27af)) || - ((code >= 0x27b1) && (code <= 0x27be)) || - ((code >= 0x2800) && (code <= 0x28ff)) || - ((code >= 0x2e80) && (code <= 0x2e99)) || - ((code >= 0x2e9b) && (code <= 0x2ef3)) || - ((code >= 0x2f00) && (code <= 0x2fd5)) || - ((code >= 0x2ff0) && (code <= 0x2ffb)) || - (code == 0x3004) || - ((code >= 0x3012) && (code <= 0x3013)) || - (code == 0x3020) || - ((code >= 0x3036) && (code <= 0x3037)) || - ((code >= 0x303e) && (code <= 0x303f)) || - ((code >= 0x3190) && (code <= 0x3191)) || - ((code >= 0x3196) && (code <= 0x319f)) || - ((code >= 0x3200) && (code <= 0x321c)) || - ((code >= 0x322a) && (code <= 0x3243)) || - ((code >= 0x3260) && (code <= 0x327b)) || - (code == 0x327f) || - ((code >= 0x328a) && (code <= 0x32b0)) || - ((code >= 0x32c0) && (code <= 0x32cb)) || - ((code >= 0x32d0) && (code <= 0x32fe)) || - ((code >= 0x3300) && (code <= 0x3376)) || - ((code >= 0x337b) && (code <= 0x33dd)) || - ((code >= 0x33e0) && (code <= 0x33fe)) || - ((code >= 0xa490) && (code <= 0xa4a1)) || - ((code >= 0xa4a4) && (code <= 0xa4b3)) || - ((code >= 0xa4b5) && (code <= 0xa4c0)) || - ((code >= 0xa4c2) && (code <= 0xa4c4)) || - (code == 0xa4c6) || - (code == 0xffe4) || - (code == 0xffe8) || - ((code >= 0xffed) && (code <= 0xffee)) || - ((code >= 0xfffc) && (code <= 0xfffd)) || - ((code >= 0x1d000) && (code <= 0x1d0f5)) || - ((code >= 0x1d100) && (code <= 0x1d126)) || - ((code >= 0x1d12a) && (code <= 0x1d164)) || - ((code >= 0x1d16a) && (code <= 0x1d16c)) || - ((code >= 0x1d183) && (code <= 0x1d184)) || - ((code >= 0x1d18c) && (code <= 0x1d1a9)) || - ((code >= 0x1d1ae) && (code <= 0x1d1dd))); + return(xmlCharInRange((unsigned int)code, &xmlSoG)); } /** @@ -4147,13 +3059,7 @@ xmlUCSIsCatSo(int code) { */ int xmlUCSIsCatZ(int code) { - return((code == 0x20) || - (code == 0xa0) || - (code == 0x1680) || - ((code >= 0x2000) && (code <= 0x200b)) || - ((code >= 0x2028) && (code <= 0x2029)) || - (code == 0x202f) || - (code == 0x3000)); + return(xmlCharInRange((unsigned int)code, &xmlZG)); } /** @@ -4195,8 +3101,10 @@ xmlUCSIsCatZs(int code) { return((code == 0x20) || (code == 0xa0) || (code == 0x1680) || + (code == 0x180e) || ((code >= 0x2000) && (code <= 0x200b)) || (code == 0x202f) || + (code == 0x205f) || (code == 0x3000)); } @@ -4205,85 +3113,68 @@ xmlUCSIsCatZs(int code) { * @code: UCS code point * @cat: UCS Category name * - * Check whether the caracter is part of the UCS Category + * Check whether the character is part of the UCS Category * * Returns 1 if true, 0 if false and -1 on unknown category */ int xmlUCSIsCat(int code, const char *cat) { - if (!strcmp(cat, "C")) - return(xmlUCSIsCatC(code)); - if (!strcmp(cat, "Cc")) - return(xmlUCSIsCatCc(code)); - if (!strcmp(cat, "Cf")) - return(xmlUCSIsCatCf(code)); - if (!strcmp(cat, "Co")) - return(xmlUCSIsCatCo(code)); - if (!strcmp(cat, "Cs")) - return(xmlUCSIsCatCs(code)); - if (!strcmp(cat, "L")) - return(xmlUCSIsCatL(code)); - if (!strcmp(cat, "Ll")) - return(xmlUCSIsCatLl(code)); - if (!strcmp(cat, "Lm")) - return(xmlUCSIsCatLm(code)); - if (!strcmp(cat, "Lo")) - return(xmlUCSIsCatLo(code)); - if (!strcmp(cat, "Lt")) - return(xmlUCSIsCatLt(code)); - if (!strcmp(cat, "Lu")) - return(xmlUCSIsCatLu(code)); - if (!strcmp(cat, "M")) - return(xmlUCSIsCatM(code)); - if (!strcmp(cat, "Mc")) - return(xmlUCSIsCatMc(code)); - if (!strcmp(cat, "Me")) - return(xmlUCSIsCatMe(code)); - if (!strcmp(cat, "Mn")) - return(xmlUCSIsCatMn(code)); - if (!strcmp(cat, "N")) - return(xmlUCSIsCatN(code)); - if (!strcmp(cat, "Nd")) - return(xmlUCSIsCatNd(code)); - if (!strcmp(cat, "Nl")) - return(xmlUCSIsCatNl(code)); - if (!strcmp(cat, "No")) - return(xmlUCSIsCatNo(code)); - if (!strcmp(cat, "P")) - return(xmlUCSIsCatP(code)); - if (!strcmp(cat, "Pc")) - return(xmlUCSIsCatPc(code)); - if (!strcmp(cat, "Pd")) - return(xmlUCSIsCatPd(code)); - if (!strcmp(cat, "Pe")) - return(xmlUCSIsCatPe(code)); - if (!strcmp(cat, "Pf")) - return(xmlUCSIsCatPf(code)); - if (!strcmp(cat, "Pi")) - return(xmlUCSIsCatPi(code)); - if (!strcmp(cat, "Po")) - return(xmlUCSIsCatPo(code)); - if (!strcmp(cat, "Ps")) - return(xmlUCSIsCatPs(code)); - if (!strcmp(cat, "S")) - return(xmlUCSIsCatS(code)); - if (!strcmp(cat, "Sc")) - return(xmlUCSIsCatSc(code)); - if (!strcmp(cat, "Sk")) - return(xmlUCSIsCatSk(code)); - if (!strcmp(cat, "Sm")) - return(xmlUCSIsCatSm(code)); - if (!strcmp(cat, "So")) - return(xmlUCSIsCatSo(code)); - if (!strcmp(cat, "Z")) - return(xmlUCSIsCatZ(code)); - if (!strcmp(cat, "Zl")) - return(xmlUCSIsCatZl(code)); - if (!strcmp(cat, "Zp")) - return(xmlUCSIsCatZp(code)); - if (!strcmp(cat, "Zs")) - return(xmlUCSIsCatZs(code)); - return(-1); + xmlIntFunc *func; + + func = xmlUnicodeLookup(&xmlUnicodeCatTbl, cat); + if (func == NULL) + return (-1); + return (func(code)); +} + +/* + The following routines are an UGLY HACK to provide aliases for block + names which are not in the current release, but are needed for ABI + compatibility. +*/ + +/** + * xmlUCSIsCombiningMarksforSymbols: + * @code: UCS code point + * + * Check whether the character is part of CombiningMarksforSymbols UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsCombiningMarksforSymbols(int code) { + return((code >= 0x20D0) && (code <= 0x20FF)); +} + +/** + * xmlUCSIsGreek: + * @code: UCS code point + * + * Check whether the character is part of Greek UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsGreek(int code) { + return((code >= 0x370) && (code <= 0x3FF)); +} + +/** + * xmlUCSIsPrivateUse: + * @code: UCS code point + * + * Check whether the character is part of PrivateUse UCS Block + * + * Returns 1 if true 0 otherwise + */ +int +xmlUCSIsPrivateUse(int code) { + if ( ((code >= 0xE000) && (code <= 0xF8FF)) || + ((code >= 0xF0000) && (code <= 0xFFFFD))|| + ((code >= 0x100000)&& (code <= 0x10FFFD)) ) + return (1); + else + return (0); } |