| /* |
| ******************************************************************************* |
| * |
| * Copyright (C) 1999-2001, International Business Machines |
| * Corporation and others. All Rights Reserved. |
| * |
| ******************************************************************************* |
| * file name: genprops.h |
| * encoding: US-ASCII |
| * tab size: 8 (not used) |
| * indentation:4 |
| * |
| * created on: 1999dec13 |
| * created by: Markus W. Scherer |
| */ |
| |
| #ifndef __GENPROPS_H__ |
| #define __GENPROPS_H__ |
| |
| #include "unicode/utypes.h" |
| |
| /* file definitions */ |
| #define DATA_NAME "uprops" |
| #define DATA_TYPE "dat" |
| |
| /* special casing data */ |
| typedef struct { |
| uint32_t code; |
| UBool isComplex; |
| UChar lowerCase[32], upperCase[32], titleCase[32]; |
| } SpecialCasing; |
| |
| /* case folding data */ |
| typedef struct { |
| uint32_t code, simple; |
| char status; |
| UChar full[32]; |
| } CaseFolding; |
| |
| /* character properties */ |
| typedef struct { |
| uint32_t code, lowerCase, upperCase, titleCase, mirrorMapping; |
| int16_t decimalDigitValue, digitValue; /* -1: no value */ |
| int32_t numericValue; /* see hasNumericValue */ |
| uint32_t denominator; /* 0: no value */ |
| uint8_t generalCategory, canonicalCombining, bidi, isMirrored, hasNumericValue; |
| SpecialCasing *specialCasing; |
| CaseFolding *caseFolding; |
| } Props; |
| |
| /* global flags */ |
| extern UBool beVerbose, haveCopyright; |
| |
| /* name tables */ |
| extern const char *const |
| bidiNames[]; |
| |
| extern const char *const |
| genCategoryNames[]; |
| |
| /* prototypes */ |
| extern void |
| setUnicodeVersion(const char *v); |
| |
| extern void |
| initStore(void); |
| |
| extern uint32_t |
| makeProps(Props *p); |
| |
| extern void |
| addProps(uint32_t c, uint32_t props); |
| |
| extern void |
| repeatProps(uint32_t first, uint32_t last, uint32_t props); |
| |
| extern void |
| compactStage2(void); |
| |
| extern void |
| compactStage3(void); |
| |
| extern void |
| compactProps(void); |
| |
| extern void |
| generateData(const char *dataDir); |
| |
| #endif |
| |