00001
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039 #ifndef _RTX_UNICODE_H_
00040 #define _RTX_UNICODE_H_
00041
00042 #include "rtxsrc/rtxCommon.h"
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059 #define OS_IS_CHAR(c) \
00060 ((((c) >= 0x20) && ((c) <= 0xD7FF)) || \
00061 ((c) == 0x09) || ((c) == 0x0A) || ((c) == 0x0D) || \
00062 (((c) >= 0xE000) && ((c) <= 0xFFFD)) || \
00063 (((c) >= 0x10000) && ((c) <= 0x10FFFF)))
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073 #define OS_IS_BLANK(c) \
00074 (((c) == 0x20) || ((c) == 0x09) || ((c) == 0xA) || ((c) == 0x0D))
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084 #define OS_IS_BASECHAR(c) rtxUCSIsBaseChar(c)
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094 #define OS_IS_DIGIT(c) rtxUCSIsDigit(c)
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104 #define OS_IS_COMBINING(c) rtxUCSIsCombining(c)
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117 #define OS_IS_EXTENDER(c) rtxUCSIsExtender(c)
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128 #define OS_IS_IDEOGRAPHIC(c) rtxUCSIsIdeographic(c)
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139 #define OS_IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c))
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151 #define OS_IS_PUBIDCHAR(c) xmlIsPubidChar(c)
00152
00153 #ifdef __cplusplus
00154 extern "C" {
00155 #endif
00156
00157
00158
00159 EXTERNRTX OSBOOL rtxUCSStrCmp (const OSUNICHAR* text1,
00160 const OSUNICHAR* text2);
00161
00162 EXTERNRTX OSBOOL rtxUCSStrCmpAsc (const OSUNICHAR* text1,
00163 const char* text2);
00164
00165 EXTERNRTX size_t rtxUCSStrLen (const OSUNICHAR* text);
00166
00167 EXTERNRTX void rtxUCSStrPrint (const OSUNICHAR* text);
00168
00169 EXTERNRTX void rtxUCSStrPrintFile (FILE* fp, const OSUNICHAR* text);
00170
00171 EXTERNRTX char* rtxUCSToCStr (OSCTXT* pctxt, const OSUNICHAR* text);
00172
00173 EXTERNRTX long rtxUCSToUTF8 (OSCTXT* pctxt, const OSUNICHAR* inbuf, size_t inlen,
00174 OSOCTET* outbuf, size_t outbufsiz);
00175
00185 EXTERNRTX const OSUTF8CHAR*
00186 rtxUCSToDynUTF8 (OSCTXT* pctxt, const OSUNICHAR* inbuf);
00187
00200 EXTERNRTX OSBOOL rtxUCSIsChar (OS32BITCHAR c);
00201
00212 EXTERNRTX OSBOOL rtxUCSIsBlank (OS32BITCHAR c);
00213
00223 EXTERNRTX OSBOOL rtxUCSIsBaseChar (OS32BITCHAR c);
00224
00234 EXTERNRTX OSBOOL rtxUCSIsDigit (OS32BITCHAR c);
00235
00245 EXTERNRTX OSBOOL rtxUCSIsCombining (OS32BITCHAR c);
00246
00258 EXTERNRTX OSBOOL rtxUCSIsExtender (OS32BITCHAR c);
00259
00269 EXTERNRTX OSBOOL rtxUCSIsIdeographic (OS32BITCHAR c);
00270
00280 EXTERNRTX OSBOOL rtxUCSIsLetter (OS32BITCHAR c);
00281
00291 EXTERNRTX OSBOOL rtxUCSIsPubidChar (OS32BITCHAR c);
00292
00293 EXTERNRTX OSBOOL rtxUCSIsAlphabeticPresentationForms (OS32BITCHAR code) ;
00294
00295 EXTERNRTX OSBOOL rtxUCSIsArabic (OS32BITCHAR code) ;
00296
00297 EXTERNRTX OSBOOL rtxUCSIsArabicPresentationFormsA (OS32BITCHAR code) ;
00298
00299 EXTERNRTX OSBOOL rtxUCSIsArabicPresentationFormsB (OS32BITCHAR code) ;
00300
00301 EXTERNRTX OSBOOL rtxUCSIsArmenian (OS32BITCHAR code) ;
00302
00303 EXTERNRTX OSBOOL rtxUCSIsArrows (OS32BITCHAR code) ;
00304
00305 EXTERNRTX OSBOOL rtxUCSIsBasicLatin (OS32BITCHAR code) ;
00306
00307 EXTERNRTX OSBOOL rtxUCSIsBengali (OS32BITCHAR code) ;
00308
00309 EXTERNRTX OSBOOL rtxUCSIsBlockElements (OS32BITCHAR code) ;
00310
00311 EXTERNRTX OSBOOL rtxUCSIsBopomofo (OS32BITCHAR code) ;
00312
00313 EXTERNRTX OSBOOL rtxUCSIsBopomofoExtended (OS32BITCHAR code) ;
00314
00315 EXTERNRTX OSBOOL rtxUCSIsBoxDrawing (OS32BITCHAR code) ;
00316
00317 EXTERNRTX OSBOOL rtxUCSIsBraillePatterns (OS32BITCHAR code) ;
00318
00319 EXTERNRTX OSBOOL rtxUCSIsByzantineMusicalSymbols (OS32BITCHAR code) ;
00320
00321 EXTERNRTX OSBOOL rtxUCSIsCJKCompatibility (OS32BITCHAR code) ;
00322
00323 EXTERNRTX OSBOOL rtxUCSIsCJKCompatibilityForms (OS32BITCHAR code) ;
00324
00325 EXTERNRTX OSBOOL rtxUCSIsCJKCompatibilityIdeographs (OS32BITCHAR code) ;
00326
00327 EXTERNRTX OSBOOL rtxUCSIsCJKCompatibilityIdeographsSupplement (OS32BITCHAR code) ;
00328
00329 EXTERNRTX OSBOOL rtxUCSIsCJKRadicalsSupplement (OS32BITCHAR code) ;
00330
00331 EXTERNRTX OSBOOL rtxUCSIsCJKSymbolsandPunctuation (OS32BITCHAR code) ;
00332
00333 EXTERNRTX OSBOOL rtxUCSIsCJKUnifiedIdeographs (OS32BITCHAR code) ;
00334
00335 EXTERNRTX OSBOOL rtxUCSIsCJKUnifiedIdeographsExtensionA (OS32BITCHAR code) ;
00336
00337 EXTERNRTX OSBOOL rtxUCSIsCJKUnifiedIdeographsExtensionB (OS32BITCHAR code) ;
00338
00339 EXTERNRTX OSBOOL rtxUCSIsCherokee (OS32BITCHAR code) ;
00340
00341 EXTERNRTX OSBOOL rtxUCSIsCombiningDiacriticalMarks (OS32BITCHAR code) ;
00342
00343 EXTERNRTX OSBOOL rtxUCSIsCombiningHalfMarks (OS32BITCHAR code) ;
00344
00345 EXTERNRTX OSBOOL rtxUCSIsCombiningMarksforSymbols (OS32BITCHAR code) ;
00346
00347 EXTERNRTX OSBOOL rtxUCSIsControlPictures (OS32BITCHAR code) ;
00348
00349 EXTERNRTX OSBOOL rtxUCSIsCurrencySymbols (OS32BITCHAR code) ;
00350
00351 EXTERNRTX OSBOOL rtxUCSIsCyrillic (OS32BITCHAR code) ;
00352
00353 EXTERNRTX OSBOOL rtxUCSIsDeseret (OS32BITCHAR code) ;
00354
00355 EXTERNRTX OSBOOL rtxUCSIsDevanagari (OS32BITCHAR code) ;
00356
00357 EXTERNRTX OSBOOL rtxUCSIsDingbats (OS32BITCHAR code) ;
00358
00359 EXTERNRTX OSBOOL rtxUCSIsEnclosedAlphanumerics (OS32BITCHAR code) ;
00360
00361 EXTERNRTX OSBOOL rtxUCSIsEnclosedCJKLettersandMonths (OS32BITCHAR code) ;
00362
00363 EXTERNRTX OSBOOL rtxUCSIsEthiopic (OS32BITCHAR code) ;
00364
00365 EXTERNRTX OSBOOL rtxUCSIsGeneralPunctuation (OS32BITCHAR code) ;
00366
00367 EXTERNRTX OSBOOL rtxUCSIsGeometricShapes (OS32BITCHAR code) ;
00368
00369 EXTERNRTX OSBOOL rtxUCSIsGeorgian (OS32BITCHAR code) ;
00370
00371 EXTERNRTX OSBOOL rtxUCSIsGothic (OS32BITCHAR code) ;
00372
00373 EXTERNRTX OSBOOL rtxUCSIsGreek (OS32BITCHAR code) ;
00374
00375 EXTERNRTX OSBOOL rtxUCSIsGreekExtended (OS32BITCHAR code) ;
00376
00377 EXTERNRTX OSBOOL rtxUCSIsGujarati (OS32BITCHAR code) ;
00378
00379 EXTERNRTX OSBOOL rtxUCSIsGurmukhi (OS32BITCHAR code) ;
00380
00381 EXTERNRTX OSBOOL rtxUCSIsHalfwidthandFullwidthForms (OS32BITCHAR code) ;
00382
00383 EXTERNRTX OSBOOL rtxUCSIsHangulCompatibilityJamo (OS32BITCHAR code) ;
00384
00385 EXTERNRTX OSBOOL rtxUCSIsHangulJamo (OS32BITCHAR code) ;
00386
00387 EXTERNRTX OSBOOL rtxUCSIsHangulSyllables (OS32BITCHAR code) ;
00388
00389 EXTERNRTX OSBOOL rtxUCSIsHebrew (OS32BITCHAR code) ;
00390
00391 EXTERNRTX OSBOOL rtxUCSIsHighPrivateUseSurrogates (OS32BITCHAR code) ;
00392
00393 EXTERNRTX OSBOOL rtxUCSIsHighSurrogates (OS32BITCHAR code) ;
00394
00395 EXTERNRTX OSBOOL rtxUCSIsHiragana (OS32BITCHAR code) ;
00396
00397 EXTERNRTX OSBOOL rtxUCSIsIPAExtensions (OS32BITCHAR code) ;
00398
00399 EXTERNRTX OSBOOL rtxUCSIsIdeographicDescriptionCharacters (OS32BITCHAR code) ;
00400
00401 EXTERNRTX OSBOOL rtxUCSIsKanbun (OS32BITCHAR code) ;
00402
00403 EXTERNRTX OSBOOL rtxUCSIsKangxiRadicals (OS32BITCHAR code) ;
00404
00405 EXTERNRTX OSBOOL rtxUCSIsKannada (OS32BITCHAR code) ;
00406
00407 EXTERNRTX OSBOOL rtxUCSIsKatakana (OS32BITCHAR code) ;
00408
00409 EXTERNRTX OSBOOL rtxUCSIsKhmer (OS32BITCHAR code) ;
00410
00411 EXTERNRTX OSBOOL rtxUCSIsLao (OS32BITCHAR code) ;
00412
00413 EXTERNRTX OSBOOL rtxUCSIsLatin1Supplement (OS32BITCHAR code) ;
00414
00415 EXTERNRTX OSBOOL rtxUCSIsLatinExtendedA (OS32BITCHAR code) ;
00416
00417 EXTERNRTX OSBOOL rtxUCSIsLatinExtendedB (OS32BITCHAR code) ;
00418
00419 EXTERNRTX OSBOOL rtxUCSIsLatinExtendedAdditional (OS32BITCHAR code) ;
00420
00421 EXTERNRTX OSBOOL rtxUCSIsLetterlikeSymbols (OS32BITCHAR code) ;
00422
00423 EXTERNRTX OSBOOL rtxUCSIsLowSurrogates (OS32BITCHAR code) ;
00424
00425 EXTERNRTX OSBOOL rtxUCSIsMalayalam (OS32BITCHAR code) ;
00426
00427 EXTERNRTX OSBOOL rtxUCSIsMathematicalAlphanumericSymbols (OS32BITCHAR code) ;
00428
00429 EXTERNRTX OSBOOL rtxUCSIsMathematicalOperators (OS32BITCHAR code) ;
00430
00431 EXTERNRTX OSBOOL rtxUCSIsMiscellaneousSymbols (OS32BITCHAR code) ;
00432
00433 EXTERNRTX OSBOOL rtxUCSIsMiscellaneousTechnical (OS32BITCHAR code) ;
00434
00435 EXTERNRTX OSBOOL rtxUCSIsMongolian (OS32BITCHAR code) ;
00436
00437 EXTERNRTX OSBOOL rtxUCSIsMusicalSymbols (OS32BITCHAR code) ;
00438
00439 EXTERNRTX OSBOOL rtxUCSIsMyanmar (OS32BITCHAR code) ;
00440
00441 EXTERNRTX OSBOOL rtxUCSIsNumberForms (OS32BITCHAR code) ;
00442
00443 EXTERNRTX OSBOOL rtxUCSIsOgham (OS32BITCHAR code) ;
00444
00445 EXTERNRTX OSBOOL rtxUCSIsOldItalic (OS32BITCHAR code) ;
00446
00447 EXTERNRTX OSBOOL rtxUCSIsOpticalCharacterRecognition (OS32BITCHAR code) ;
00448
00449 EXTERNRTX OSBOOL rtxUCSIsOriya (OS32BITCHAR code) ;
00450
00451 EXTERNRTX OSBOOL rtxUCSIsPrivateUse (OS32BITCHAR code) ;
00452
00453 EXTERNRTX OSBOOL rtxUCSIsRunic (OS32BITCHAR code) ;
00454
00455 EXTERNRTX OSBOOL rtxUCSIsSinhala (OS32BITCHAR code) ;
00456
00457 EXTERNRTX OSBOOL rtxUCSIsSmallFormVariants (OS32BITCHAR code) ;
00458
00459 EXTERNRTX OSBOOL rtxUCSIsSpacingModifierLetters (OS32BITCHAR code) ;
00460
00461 EXTERNRTX OSBOOL rtxUCSIsSpecials (OS32BITCHAR code) ;
00462
00463 EXTERNRTX OSBOOL rtxUCSIsSuperscriptsandSubscripts (OS32BITCHAR code) ;
00464
00465 EXTERNRTX OSBOOL rtxUCSIsSyriac (OS32BITCHAR code) ;
00466
00467 EXTERNRTX OSBOOL rtxUCSIsTags (OS32BITCHAR code) ;
00468
00469 EXTERNRTX OSBOOL rtxUCSIsTamil (OS32BITCHAR code) ;
00470
00471 EXTERNRTX OSBOOL rtxUCSIsTelugu (OS32BITCHAR code) ;
00472
00473 EXTERNRTX OSBOOL rtxUCSIsThaana (OS32BITCHAR code) ;
00474
00475 EXTERNRTX OSBOOL rtxUCSIsThai (OS32BITCHAR code) ;
00476
00477 EXTERNRTX OSBOOL rtxUCSIsTibetan (OS32BITCHAR code) ;
00478
00479 EXTERNRTX OSBOOL rtxUCSIsUnifiedCanadianAboriginalSyllabics (OS32BITCHAR code) ;
00480
00481 EXTERNRTX OSBOOL rtxUCSIsYiRadicals (OS32BITCHAR code) ;
00482
00483 EXTERNRTX OSBOOL rtxUCSIsYiSyllables (OS32BITCHAR code) ;
00484
00485 EXTERNRTX int rtxUCSIsBlock (OS32BITCHAR code, const char *block) ;
00486
00487 EXTERNRTX OSBOOL rtxUCSIsCatC (OS32BITCHAR code) ;
00488
00489 EXTERNRTX OSBOOL rtxUCSIsCatCc (OS32BITCHAR code) ;
00490
00491 EXTERNRTX OSBOOL rtxUCSIsCatCf (OS32BITCHAR code) ;
00492
00493 EXTERNRTX OSBOOL rtxUCSIsCatCo (OS32BITCHAR code) ;
00494
00495 EXTERNRTX OSBOOL rtxUCSIsCatCs (OS32BITCHAR code) ;
00496
00497 EXTERNRTX OSBOOL rtxUCSIsCatL (OS32BITCHAR code) ;
00498
00499 EXTERNRTX OSBOOL rtxUCSIsCatLl (OS32BITCHAR code) ;
00500
00501 EXTERNRTX OSBOOL rtxUCSIsCatLm (OS32BITCHAR code) ;
00502
00503 EXTERNRTX OSBOOL rtxUCSIsCatLo (OS32BITCHAR code) ;
00504
00505 EXTERNRTX OSBOOL rtxUCSIsCatLt (OS32BITCHAR code) ;
00506
00507 EXTERNRTX OSBOOL rtxUCSIsCatLu (OS32BITCHAR code) ;
00508
00509 EXTERNRTX OSBOOL rtxUCSIsCatM (OS32BITCHAR code) ;
00510
00511 EXTERNRTX OSBOOL rtxUCSIsCatMc (OS32BITCHAR code) ;
00512
00513 EXTERNRTX OSBOOL rtxUCSIsCatMe (OS32BITCHAR code) ;
00514
00515 EXTERNRTX OSBOOL rtxUCSIsCatMn (OS32BITCHAR code) ;
00516
00517 EXTERNRTX OSBOOL rtxUCSIsCatN (OS32BITCHAR code) ;
00518
00519 EXTERNRTX OSBOOL rtxUCSIsCatNd (OS32BITCHAR code) ;
00520
00521 EXTERNRTX OSBOOL rtxUCSIsCatNl (OS32BITCHAR code) ;
00522
00523 EXTERNRTX OSBOOL rtxUCSIsCatNo (OS32BITCHAR code) ;
00524
00525 EXTERNRTX OSBOOL rtxUCSIsCatP (OS32BITCHAR code) ;
00526
00527 EXTERNRTX OSBOOL rtxUCSIsCatPc (OS32BITCHAR code) ;
00528
00529 EXTERNRTX OSBOOL rtxUCSIsCatPd (OS32BITCHAR code) ;
00530
00531 EXTERNRTX OSBOOL rtxUCSIsCatPe (OS32BITCHAR code) ;
00532
00533 EXTERNRTX OSBOOL rtxUCSIsCatPf (OS32BITCHAR code) ;
00534
00535 EXTERNRTX OSBOOL rtxUCSIsCatPi (OS32BITCHAR code) ;
00536
00537 EXTERNRTX OSBOOL rtxUCSIsCatPo (OS32BITCHAR code) ;
00538
00539 EXTERNRTX OSBOOL rtxUCSIsCatPs (OS32BITCHAR code) ;
00540
00541 EXTERNRTX OSBOOL rtxUCSIsCatS (OS32BITCHAR code) ;
00542
00543 EXTERNRTX OSBOOL rtxUCSIsCatSc (OS32BITCHAR code) ;
00544
00545 EXTERNRTX OSBOOL rtxUCSIsCatSk (OS32BITCHAR code) ;
00546
00547 EXTERNRTX OSBOOL rtxUCSIsCatSm (OS32BITCHAR code) ;
00548
00549 EXTERNRTX OSBOOL rtxUCSIsCatSo (OS32BITCHAR code) ;
00550
00551 EXTERNRTX OSBOOL rtxUCSIsCatZ (OS32BITCHAR code) ;
00552
00553 EXTERNRTX OSBOOL rtxUCSIsCatZl (OS32BITCHAR code) ;
00554
00555 EXTERNRTX OSBOOL rtxUCSIsCatZp (OS32BITCHAR code) ;
00556
00557 EXTERNRTX OSBOOL rtxUCSIsCatZs (OS32BITCHAR code) ;
00558
00559 EXTERNRTX int rtxUCSIsCat (OS32BITCHAR code, const char *cat) ;
00560
00561 #ifdef __cplusplus
00562 }
00563 #endif
00564
00565 #endif