Commit | Line | Data |
---|---|---|
e5a5a138 | 1 | /* Automatically generated file, see scripts/make-unidata */ |
61507e3c RK |
2 | #ifndef UNIDATA_H |
3 | #define UNIDATA_H | |
14523635 RK |
4 | enum unicode_General_Category { |
5 | unicode_General_Category_Cc, | |
6 | unicode_General_Category_Cf, | |
7 | unicode_General_Category_Cn, | |
8 | unicode_General_Category_Co, | |
9 | unicode_General_Category_Cs, | |
10 | unicode_General_Category_Ll, | |
11 | unicode_General_Category_Lm, | |
12 | unicode_General_Category_Lo, | |
13 | unicode_General_Category_Lt, | |
14 | unicode_General_Category_Lu, | |
15 | unicode_General_Category_Mc, | |
16 | unicode_General_Category_Me, | |
17 | unicode_General_Category_Mn, | |
18 | unicode_General_Category_Nd, | |
19 | unicode_General_Category_Nl, | |
20 | unicode_General_Category_No, | |
21 | unicode_General_Category_Pc, | |
22 | unicode_General_Category_Pd, | |
23 | unicode_General_Category_Pe, | |
24 | unicode_General_Category_Pf, | |
25 | unicode_General_Category_Pi, | |
26 | unicode_General_Category_Po, | |
27 | unicode_General_Category_Ps, | |
28 | unicode_General_Category_Sc, | |
29 | unicode_General_Category_Sk, | |
30 | unicode_General_Category_Sm, | |
31 | unicode_General_Category_So, | |
32 | unicode_General_Category_Zl, | |
33 | unicode_General_Category_Zp, | |
34 | unicode_General_Category_Zs | |
61507e3c | 35 | }; |
349b7b74 RK |
36 | enum unicode_Grapheme_Break { |
37 | unicode_Grapheme_Break_CR, | |
38 | unicode_Grapheme_Break_Control, | |
39 | unicode_Grapheme_Break_Extend, | |
40 | unicode_Grapheme_Break_L, | |
41 | unicode_Grapheme_Break_LF, | |
349b7b74 RK |
42 | unicode_Grapheme_Break_Other, |
43 | unicode_Grapheme_Break_T, | |
44 | unicode_Grapheme_Break_V | |
45 | }; | |
46 | extern const char *const unicode_Grapheme_Break_names[]; | |
0b7052da RK |
47 | enum unicode_Word_Break { |
48 | unicode_Word_Break_ALetter, | |
49 | unicode_Word_Break_Extend, | |
50 | unicode_Word_Break_ExtendNumLet, | |
51 | unicode_Word_Break_Format, | |
52 | unicode_Word_Break_Katakana, | |
53 | unicode_Word_Break_MidLetter, | |
54 | unicode_Word_Break_MidNum, | |
55 | unicode_Word_Break_Numeric, | |
56 | unicode_Word_Break_Other | |
57 | }; | |
bb48024f | 58 | extern const char *const unicode_Word_Break_names[]; |
349b7b74 RK |
59 | enum unicode_Sentence_Break { |
60 | unicode_Sentence_Break_ATerm, | |
61 | unicode_Sentence_Break_Close, | |
62 | unicode_Sentence_Break_Extend, | |
63 | unicode_Sentence_Break_Format, | |
64 | unicode_Sentence_Break_Lower, | |
65 | unicode_Sentence_Break_Numeric, | |
66 | unicode_Sentence_Break_OLetter, | |
67 | unicode_Sentence_Break_Other, | |
68 | unicode_Sentence_Break_STerm, | |
69 | unicode_Sentence_Break_Sep, | |
70 | unicode_Sentence_Break_Sp, | |
71 | unicode_Sentence_Break_Upper | |
72 | }; | |
73 | extern const char *const unicode_Sentence_Break_names[]; | |
e5a5a138 | 74 | enum unicode_flags { |
0b7052da | 75 | unicode_normalize_before_casefold = 1 |
e5a5a138 RK |
76 | }; |
77 | ||
61507e3c | 78 | struct unidata { |
e5a5a138 RK |
79 | const uint32_t *compat; |
80 | const uint32_t *canon; | |
81 | const uint32_t *casefold; | |
82 | int16_t upper_offset; | |
83 | int16_t lower_offset; | |
84 | unsigned char ccc; | |
14523635 | 85 | char general_category; |
e5a5a138 | 86 | uint8_t flags; |
349b7b74 | 87 | char grapheme_break; |
0b7052da | 88 | char word_break; |
349b7b74 | 89 | char sentence_break; |
61507e3c RK |
90 | }; |
91 | extern const struct unidata *const unidata[]; | |
e5a5a138 RK |
92 | #define UNICODE_NCHARS 195200 |
93 | #define UNICODE_MODULUS 128 | |
61507e3c | 94 | #endif |