1 /** @file lib/unidata.h
2 * @brief Unicode tables
4 * Automatically generated file, see scripts/make-unidata
10 enum unicode_General_Category
{
11 unicode_General_Category_Cc
,
12 unicode_General_Category_Cf
,
13 unicode_General_Category_Cn
,
14 unicode_General_Category_Co
,
15 unicode_General_Category_Cs
,
16 unicode_General_Category_Ll
,
17 unicode_General_Category_Lm
,
18 unicode_General_Category_Lo
,
19 unicode_General_Category_Lt
,
20 unicode_General_Category_Lu
,
21 unicode_General_Category_Mc
,
22 unicode_General_Category_Me
,
23 unicode_General_Category_Mn
,
24 unicode_General_Category_Nd
,
25 unicode_General_Category_Nl
,
26 unicode_General_Category_No
,
27 unicode_General_Category_Pc
,
28 unicode_General_Category_Pd
,
29 unicode_General_Category_Pe
,
30 unicode_General_Category_Pf
,
31 unicode_General_Category_Pi
,
32 unicode_General_Category_Po
,
33 unicode_General_Category_Ps
,
34 unicode_General_Category_Sc
,
35 unicode_General_Category_Sk
,
36 unicode_General_Category_Sm
,
37 unicode_General_Category_So
,
38 unicode_General_Category_Zl
,
39 unicode_General_Category_Zp
,
40 unicode_General_Category_Zs
42 enum unicode_Grapheme_Break
{
43 unicode_Grapheme_Break_CR
,
44 unicode_Grapheme_Break_Control
,
45 unicode_Grapheme_Break_Extend
,
46 unicode_Grapheme_Break_L
,
47 unicode_Grapheme_Break_LF
,
48 unicode_Grapheme_Break_LV
,
49 unicode_Grapheme_Break_LVT
,
50 unicode_Grapheme_Break_Other
,
51 unicode_Grapheme_Break_T
,
52 unicode_Grapheme_Break_V
54 extern const char *const unicode_Grapheme_Break_names
[];
55 enum unicode_Word_Break
{
56 unicode_Word_Break_ALetter
,
57 unicode_Word_Break_Extend
,
58 unicode_Word_Break_ExtendNumLet
,
59 unicode_Word_Break_Format
,
60 unicode_Word_Break_Katakana
,
61 unicode_Word_Break_MidLetter
,
62 unicode_Word_Break_MidNum
,
63 unicode_Word_Break_Numeric
,
64 unicode_Word_Break_Other
66 extern const char *const unicode_Word_Break_names
[];
67 enum unicode_Sentence_Break
{
68 unicode_Sentence_Break_ATerm
,
69 unicode_Sentence_Break_Close
,
70 unicode_Sentence_Break_Extend
,
71 unicode_Sentence_Break_Format
,
72 unicode_Sentence_Break_Lower
,
73 unicode_Sentence_Break_Numeric
,
74 unicode_Sentence_Break_OLetter
,
75 unicode_Sentence_Break_Other
,
76 unicode_Sentence_Break_STerm
,
77 unicode_Sentence_Break_Sep
,
78 unicode_Sentence_Break_Sp
,
79 unicode_Sentence_Break_Upper
81 extern const char *const unicode_Sentence_Break_names
[];
83 unicode_normalize_before_casefold
= 1,
84 unicode_compatibility_decomposition
= 2
88 const uint32_t *decomp
;
89 const uint32_t *casefold
;
90 const uint32_t *composed
;
92 char general_category
;
98 extern const struct unidata
*const unidata
[];
99 extern const struct unicode_utf8_row
{
102 } unicode_utf8_valid
[];
103 #define UNICODE_NCHARS 1114112
104 #define UNICODE_MODULUS 16
105 #define UNICODE_BREAK_START 196608
106 #define UNICODE_BREAK_END 917504
107 #define UNICODE_BREAK_TOP 918016