diff options
Diffstat (limited to 'lib/unicode/prop/uprop_is_ci.c')
-rw-r--r-- | lib/unicode/prop/uprop_is_ci.c | 455 |
1 files changed, 455 insertions, 0 deletions
diff --git a/lib/unicode/prop/uprop_is_ci.c b/lib/unicode/prop/uprop_is_ci.c new file mode 100644 index 0000000..43f0e11 --- /dev/null +++ b/lib/unicode/prop/uprop_is_ci.c @@ -0,0 +1,455 @@ +/* This file is autogenerated by gen/prop/bool-props; DO NOT EDIT. */ + +#include "__bsearch.h" +#include "bitset.h" +#include "rune.h" +#include "unicode/prop.h" + +/* clang-format off */ + +static constexpr bitset(bs, LATIN1_MAX) = { + 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x04, + 0x00, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xA1, 0x90, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +static const struct { + rune lo, hi; +} lookup[] = { + {RUNE_C(0x0002B0), RUNE_C(0x00036F)}, + {RUNE_C(0x000374), RUNE_C(0x000375)}, + {RUNE_C(0x00037A), RUNE_C(0x00037A)}, + {RUNE_C(0x000384), RUNE_C(0x000385)}, + {RUNE_C(0x000387), RUNE_C(0x000387)}, + {RUNE_C(0x000483), RUNE_C(0x000489)}, + {RUNE_C(0x000559), RUNE_C(0x000559)}, + {RUNE_C(0x00055F), RUNE_C(0x00055F)}, + {RUNE_C(0x000591), RUNE_C(0x0005BD)}, + {RUNE_C(0x0005BF), RUNE_C(0x0005BF)}, + {RUNE_C(0x0005C1), RUNE_C(0x0005C2)}, + {RUNE_C(0x0005C4), RUNE_C(0x0005C5)}, + {RUNE_C(0x0005C7), RUNE_C(0x0005C7)}, + {RUNE_C(0x0005F4), RUNE_C(0x0005F4)}, + {RUNE_C(0x000600), RUNE_C(0x000605)}, + {RUNE_C(0x000610), RUNE_C(0x00061A)}, + {RUNE_C(0x00061C), RUNE_C(0x00061C)}, + {RUNE_C(0x000640), RUNE_C(0x000640)}, + {RUNE_C(0x00064B), RUNE_C(0x00065F)}, + {RUNE_C(0x000670), RUNE_C(0x000670)}, + {RUNE_C(0x0006D6), RUNE_C(0x0006DD)}, + {RUNE_C(0x0006DF), RUNE_C(0x0006E8)}, + {RUNE_C(0x0006EA), RUNE_C(0x0006ED)}, + {RUNE_C(0x00070F), RUNE_C(0x00070F)}, + {RUNE_C(0x000711), RUNE_C(0x000711)}, + {RUNE_C(0x000730), RUNE_C(0x00074A)}, + {RUNE_C(0x0007A6), RUNE_C(0x0007B0)}, + {RUNE_C(0x0007EB), RUNE_C(0x0007F5)}, + {RUNE_C(0x0007FA), RUNE_C(0x0007FA)}, + {RUNE_C(0x0007FD), RUNE_C(0x0007FD)}, + {RUNE_C(0x000816), RUNE_C(0x00082D)}, + {RUNE_C(0x000859), RUNE_C(0x00085B)}, + {RUNE_C(0x000888), RUNE_C(0x000888)}, + {RUNE_C(0x000890), RUNE_C(0x000891)}, + {RUNE_C(0x000898), RUNE_C(0x00089F)}, + {RUNE_C(0x0008C9), RUNE_C(0x000902)}, + {RUNE_C(0x00093A), RUNE_C(0x00093A)}, + {RUNE_C(0x00093C), RUNE_C(0x00093C)}, + {RUNE_C(0x000941), RUNE_C(0x000948)}, + {RUNE_C(0x00094D), RUNE_C(0x00094D)}, + {RUNE_C(0x000951), RUNE_C(0x000957)}, + {RUNE_C(0x000962), RUNE_C(0x000963)}, + {RUNE_C(0x000971), RUNE_C(0x000971)}, + {RUNE_C(0x000981), RUNE_C(0x000981)}, + {RUNE_C(0x0009BC), RUNE_C(0x0009BC)}, + {RUNE_C(0x0009C1), RUNE_C(0x0009C4)}, + {RUNE_C(0x0009CD), RUNE_C(0x0009CD)}, + {RUNE_C(0x0009E2), RUNE_C(0x0009E3)}, + {RUNE_C(0x0009FE), RUNE_C(0x0009FE)}, + {RUNE_C(0x000A01), RUNE_C(0x000A02)}, + {RUNE_C(0x000A3C), RUNE_C(0x000A3C)}, + {RUNE_C(0x000A41), RUNE_C(0x000A42)}, + {RUNE_C(0x000A47), RUNE_C(0x000A48)}, + {RUNE_C(0x000A4B), RUNE_C(0x000A4D)}, + {RUNE_C(0x000A51), RUNE_C(0x000A51)}, + {RUNE_C(0x000A70), RUNE_C(0x000A71)}, + {RUNE_C(0x000A75), RUNE_C(0x000A75)}, + {RUNE_C(0x000A81), RUNE_C(0x000A82)}, + {RUNE_C(0x000ABC), RUNE_C(0x000ABC)}, + {RUNE_C(0x000AC1), RUNE_C(0x000AC5)}, + {RUNE_C(0x000AC7), RUNE_C(0x000AC8)}, + {RUNE_C(0x000ACD), RUNE_C(0x000ACD)}, + {RUNE_C(0x000AE2), RUNE_C(0x000AE3)}, + {RUNE_C(0x000AFA), RUNE_C(0x000AFF)}, + {RUNE_C(0x000B01), RUNE_C(0x000B01)}, + {RUNE_C(0x000B3C), RUNE_C(0x000B3C)}, + {RUNE_C(0x000B3F), RUNE_C(0x000B3F)}, + {RUNE_C(0x000B41), RUNE_C(0x000B44)}, + {RUNE_C(0x000B4D), RUNE_C(0x000B4D)}, + {RUNE_C(0x000B55), RUNE_C(0x000B56)}, + {RUNE_C(0x000B62), RUNE_C(0x000B63)}, + {RUNE_C(0x000B82), RUNE_C(0x000B82)}, + {RUNE_C(0x000BC0), RUNE_C(0x000BC0)}, + {RUNE_C(0x000BCD), RUNE_C(0x000BCD)}, + {RUNE_C(0x000C00), RUNE_C(0x000C00)}, + {RUNE_C(0x000C04), RUNE_C(0x000C04)}, + {RUNE_C(0x000C3C), RUNE_C(0x000C3C)}, + {RUNE_C(0x000C3E), RUNE_C(0x000C40)}, + {RUNE_C(0x000C46), RUNE_C(0x000C48)}, + {RUNE_C(0x000C4A), RUNE_C(0x000C4D)}, + {RUNE_C(0x000C55), RUNE_C(0x000C56)}, + {RUNE_C(0x000C62), RUNE_C(0x000C63)}, + {RUNE_C(0x000C81), RUNE_C(0x000C81)}, + {RUNE_C(0x000CBC), RUNE_C(0x000CBC)}, + {RUNE_C(0x000CBF), RUNE_C(0x000CBF)}, + {RUNE_C(0x000CC6), RUNE_C(0x000CC6)}, + {RUNE_C(0x000CCC), RUNE_C(0x000CCD)}, + {RUNE_C(0x000CE2), RUNE_C(0x000CE3)}, + {RUNE_C(0x000D00), RUNE_C(0x000D01)}, + {RUNE_C(0x000D3B), RUNE_C(0x000D3C)}, + {RUNE_C(0x000D41), RUNE_C(0x000D44)}, + {RUNE_C(0x000D4D), RUNE_C(0x000D4D)}, + {RUNE_C(0x000D62), RUNE_C(0x000D63)}, + {RUNE_C(0x000D81), RUNE_C(0x000D81)}, + {RUNE_C(0x000DCA), RUNE_C(0x000DCA)}, + {RUNE_C(0x000DD2), RUNE_C(0x000DD4)}, + {RUNE_C(0x000DD6), RUNE_C(0x000DD6)}, + {RUNE_C(0x000E31), RUNE_C(0x000E31)}, + {RUNE_C(0x000E34), RUNE_C(0x000E3A)}, + {RUNE_C(0x000E46), RUNE_C(0x000E4E)}, + {RUNE_C(0x000EB1), RUNE_C(0x000EB1)}, + {RUNE_C(0x000EB4), RUNE_C(0x000EBC)}, + {RUNE_C(0x000EC6), RUNE_C(0x000EC6)}, + {RUNE_C(0x000EC8), RUNE_C(0x000ECE)}, + {RUNE_C(0x000F18), RUNE_C(0x000F19)}, + {RUNE_C(0x000F35), RUNE_C(0x000F35)}, + {RUNE_C(0x000F37), RUNE_C(0x000F37)}, + {RUNE_C(0x000F39), RUNE_C(0x000F39)}, + {RUNE_C(0x000F71), RUNE_C(0x000F7E)}, + {RUNE_C(0x000F80), RUNE_C(0x000F84)}, + {RUNE_C(0x000F86), RUNE_C(0x000F87)}, + {RUNE_C(0x000F8D), RUNE_C(0x000F97)}, + {RUNE_C(0x000F99), RUNE_C(0x000FBC)}, + {RUNE_C(0x000FC6), RUNE_C(0x000FC6)}, + {RUNE_C(0x00102D), RUNE_C(0x001030)}, + {RUNE_C(0x001032), RUNE_C(0x001037)}, + {RUNE_C(0x001039), RUNE_C(0x00103A)}, + {RUNE_C(0x00103D), RUNE_C(0x00103E)}, + {RUNE_C(0x001058), RUNE_C(0x001059)}, + {RUNE_C(0x00105E), RUNE_C(0x001060)}, + {RUNE_C(0x001071), RUNE_C(0x001074)}, + {RUNE_C(0x001082), RUNE_C(0x001082)}, + {RUNE_C(0x001085), RUNE_C(0x001086)}, + {RUNE_C(0x00108D), RUNE_C(0x00108D)}, + {RUNE_C(0x00109D), RUNE_C(0x00109D)}, + {RUNE_C(0x0010FC), RUNE_C(0x0010FC)}, + {RUNE_C(0x00135D), RUNE_C(0x00135F)}, + {RUNE_C(0x001712), RUNE_C(0x001714)}, + {RUNE_C(0x001732), RUNE_C(0x001733)}, + {RUNE_C(0x001752), RUNE_C(0x001753)}, + {RUNE_C(0x001772), RUNE_C(0x001773)}, + {RUNE_C(0x0017B4), RUNE_C(0x0017B5)}, + {RUNE_C(0x0017B7), RUNE_C(0x0017BD)}, + {RUNE_C(0x0017C6), RUNE_C(0x0017C6)}, + {RUNE_C(0x0017C9), RUNE_C(0x0017D3)}, + {RUNE_C(0x0017D7), RUNE_C(0x0017D7)}, + {RUNE_C(0x0017DD), RUNE_C(0x0017DD)}, + {RUNE_C(0x00180B), RUNE_C(0x00180F)}, + {RUNE_C(0x001843), RUNE_C(0x001843)}, + {RUNE_C(0x001885), RUNE_C(0x001886)}, + {RUNE_C(0x0018A9), RUNE_C(0x0018A9)}, + {RUNE_C(0x001920), RUNE_C(0x001922)}, + {RUNE_C(0x001927), RUNE_C(0x001928)}, + {RUNE_C(0x001932), RUNE_C(0x001932)}, + {RUNE_C(0x001939), RUNE_C(0x00193B)}, + {RUNE_C(0x001A17), RUNE_C(0x001A18)}, + {RUNE_C(0x001A1B), RUNE_C(0x001A1B)}, + {RUNE_C(0x001A56), RUNE_C(0x001A56)}, + {RUNE_C(0x001A58), RUNE_C(0x001A5E)}, + {RUNE_C(0x001A60), RUNE_C(0x001A60)}, + {RUNE_C(0x001A62), RUNE_C(0x001A62)}, + {RUNE_C(0x001A65), RUNE_C(0x001A6C)}, + {RUNE_C(0x001A73), RUNE_C(0x001A7C)}, + {RUNE_C(0x001A7F), RUNE_C(0x001A7F)}, + {RUNE_C(0x001AA7), RUNE_C(0x001AA7)}, + {RUNE_C(0x001AB0), RUNE_C(0x001ACE)}, + {RUNE_C(0x001B00), RUNE_C(0x001B03)}, + {RUNE_C(0x001B34), RUNE_C(0x001B34)}, + {RUNE_C(0x001B36), RUNE_C(0x001B3A)}, + {RUNE_C(0x001B3C), RUNE_C(0x001B3C)}, + {RUNE_C(0x001B42), RUNE_C(0x001B42)}, + {RUNE_C(0x001B6B), RUNE_C(0x001B73)}, + {RUNE_C(0x001B80), RUNE_C(0x001B81)}, + {RUNE_C(0x001BA2), RUNE_C(0x001BA5)}, + {RUNE_C(0x001BA8), RUNE_C(0x001BA9)}, + {RUNE_C(0x001BAB), RUNE_C(0x001BAD)}, + {RUNE_C(0x001BE6), RUNE_C(0x001BE6)}, + {RUNE_C(0x001BE8), RUNE_C(0x001BE9)}, + {RUNE_C(0x001BED), RUNE_C(0x001BED)}, + {RUNE_C(0x001BEF), RUNE_C(0x001BF1)}, + {RUNE_C(0x001C2C), RUNE_C(0x001C33)}, + {RUNE_C(0x001C36), RUNE_C(0x001C37)}, + {RUNE_C(0x001C78), RUNE_C(0x001C7D)}, + {RUNE_C(0x001CD0), RUNE_C(0x001CD2)}, + {RUNE_C(0x001CD4), RUNE_C(0x001CE0)}, + {RUNE_C(0x001CE2), RUNE_C(0x001CE8)}, + {RUNE_C(0x001CED), RUNE_C(0x001CED)}, + {RUNE_C(0x001CF4), RUNE_C(0x001CF4)}, + {RUNE_C(0x001CF8), RUNE_C(0x001CF9)}, + {RUNE_C(0x001D2C), RUNE_C(0x001D6A)}, + {RUNE_C(0x001D78), RUNE_C(0x001D78)}, + {RUNE_C(0x001D9B), RUNE_C(0x001DFF)}, + {RUNE_C(0x001FBD), RUNE_C(0x001FBD)}, + {RUNE_C(0x001FBF), RUNE_C(0x001FC1)}, + {RUNE_C(0x001FCD), RUNE_C(0x001FCF)}, + {RUNE_C(0x001FDD), RUNE_C(0x001FDF)}, + {RUNE_C(0x001FED), RUNE_C(0x001FEF)}, + {RUNE_C(0x001FFD), RUNE_C(0x001FFE)}, + {RUNE_C(0x00200B), RUNE_C(0x00200F)}, + {RUNE_C(0x002018), RUNE_C(0x002019)}, + {RUNE_C(0x002024), RUNE_C(0x002024)}, + {RUNE_C(0x002027), RUNE_C(0x002027)}, + {RUNE_C(0x00202A), RUNE_C(0x00202E)}, + {RUNE_C(0x002060), RUNE_C(0x002064)}, + {RUNE_C(0x002066), RUNE_C(0x00206F)}, + {RUNE_C(0x002071), RUNE_C(0x002071)}, + {RUNE_C(0x00207F), RUNE_C(0x00207F)}, + {RUNE_C(0x002090), RUNE_C(0x00209C)}, + {RUNE_C(0x0020D0), RUNE_C(0x0020F0)}, + {RUNE_C(0x002C7C), RUNE_C(0x002C7D)}, + {RUNE_C(0x002CEF), RUNE_C(0x002CF1)}, + {RUNE_C(0x002D6F), RUNE_C(0x002D6F)}, + {RUNE_C(0x002D7F), RUNE_C(0x002D7F)}, + {RUNE_C(0x002DE0), RUNE_C(0x002DFF)}, + {RUNE_C(0x002E2F), RUNE_C(0x002E2F)}, + {RUNE_C(0x003005), RUNE_C(0x003005)}, + {RUNE_C(0x00302A), RUNE_C(0x00302D)}, + {RUNE_C(0x003031), RUNE_C(0x003035)}, + {RUNE_C(0x00303B), RUNE_C(0x00303B)}, + {RUNE_C(0x003099), RUNE_C(0x00309E)}, + {RUNE_C(0x0030FC), RUNE_C(0x0030FE)}, + {RUNE_C(0x00A015), RUNE_C(0x00A015)}, + {RUNE_C(0x00A4F8), RUNE_C(0x00A4FD)}, + {RUNE_C(0x00A60C), RUNE_C(0x00A60C)}, + {RUNE_C(0x00A66F), RUNE_C(0x00A672)}, + {RUNE_C(0x00A674), RUNE_C(0x00A67D)}, + {RUNE_C(0x00A67F), RUNE_C(0x00A67F)}, + {RUNE_C(0x00A69C), RUNE_C(0x00A69F)}, + {RUNE_C(0x00A6F0), RUNE_C(0x00A6F1)}, + {RUNE_C(0x00A700), RUNE_C(0x00A721)}, + {RUNE_C(0x00A770), RUNE_C(0x00A770)}, + {RUNE_C(0x00A788), RUNE_C(0x00A78A)}, + {RUNE_C(0x00A7F2), RUNE_C(0x00A7F4)}, + {RUNE_C(0x00A7F8), RUNE_C(0x00A7F9)}, + {RUNE_C(0x00A802), RUNE_C(0x00A802)}, + {RUNE_C(0x00A806), RUNE_C(0x00A806)}, + {RUNE_C(0x00A80B), RUNE_C(0x00A80B)}, + {RUNE_C(0x00A825), RUNE_C(0x00A826)}, + {RUNE_C(0x00A82C), RUNE_C(0x00A82C)}, + {RUNE_C(0x00A8C4), RUNE_C(0x00A8C5)}, + {RUNE_C(0x00A8E0), RUNE_C(0x00A8F1)}, + {RUNE_C(0x00A8FF), RUNE_C(0x00A8FF)}, + {RUNE_C(0x00A926), RUNE_C(0x00A92D)}, + {RUNE_C(0x00A947), RUNE_C(0x00A951)}, + {RUNE_C(0x00A980), RUNE_C(0x00A982)}, + {RUNE_C(0x00A9B3), RUNE_C(0x00A9B3)}, + {RUNE_C(0x00A9B6), RUNE_C(0x00A9B9)}, + {RUNE_C(0x00A9BC), RUNE_C(0x00A9BD)}, + {RUNE_C(0x00A9CF), RUNE_C(0x00A9CF)}, + {RUNE_C(0x00A9E5), RUNE_C(0x00A9E6)}, + {RUNE_C(0x00AA29), RUNE_C(0x00AA2E)}, + {RUNE_C(0x00AA31), RUNE_C(0x00AA32)}, + {RUNE_C(0x00AA35), RUNE_C(0x00AA36)}, + {RUNE_C(0x00AA43), RUNE_C(0x00AA43)}, + {RUNE_C(0x00AA4C), RUNE_C(0x00AA4C)}, + {RUNE_C(0x00AA70), RUNE_C(0x00AA70)}, + {RUNE_C(0x00AA7C), RUNE_C(0x00AA7C)}, + {RUNE_C(0x00AAB0), RUNE_C(0x00AAB0)}, + {RUNE_C(0x00AAB2), RUNE_C(0x00AAB4)}, + {RUNE_C(0x00AAB7), RUNE_C(0x00AAB8)}, + {RUNE_C(0x00AABE), RUNE_C(0x00AABF)}, + {RUNE_C(0x00AAC1), RUNE_C(0x00AAC1)}, + {RUNE_C(0x00AADD), RUNE_C(0x00AADD)}, + {RUNE_C(0x00AAEC), RUNE_C(0x00AAED)}, + {RUNE_C(0x00AAF3), RUNE_C(0x00AAF4)}, + {RUNE_C(0x00AAF6), RUNE_C(0x00AAF6)}, + {RUNE_C(0x00AB5B), RUNE_C(0x00AB5F)}, + {RUNE_C(0x00AB69), RUNE_C(0x00AB6B)}, + {RUNE_C(0x00ABE5), RUNE_C(0x00ABE5)}, + {RUNE_C(0x00ABE8), RUNE_C(0x00ABE8)}, + {RUNE_C(0x00ABED), RUNE_C(0x00ABED)}, + {RUNE_C(0x00FB1E), RUNE_C(0x00FB1E)}, + {RUNE_C(0x00FBB2), RUNE_C(0x00FBC2)}, + {RUNE_C(0x00FE00), RUNE_C(0x00FE0F)}, + {RUNE_C(0x00FE13), RUNE_C(0x00FE13)}, + {RUNE_C(0x00FE20), RUNE_C(0x00FE2F)}, + {RUNE_C(0x00FE52), RUNE_C(0x00FE52)}, + {RUNE_C(0x00FE55), RUNE_C(0x00FE55)}, + {RUNE_C(0x00FEFF), RUNE_C(0x00FEFF)}, + {RUNE_C(0x00FF07), RUNE_C(0x00FF07)}, + {RUNE_C(0x00FF0E), RUNE_C(0x00FF0E)}, + {RUNE_C(0x00FF1A), RUNE_C(0x00FF1A)}, + {RUNE_C(0x00FF3E), RUNE_C(0x00FF3E)}, + {RUNE_C(0x00FF40), RUNE_C(0x00FF40)}, + {RUNE_C(0x00FF70), RUNE_C(0x00FF70)}, + {RUNE_C(0x00FF9E), RUNE_C(0x00FF9F)}, + {RUNE_C(0x00FFE3), RUNE_C(0x00FFE3)}, + {RUNE_C(0x00FFF9), RUNE_C(0x00FFFB)}, + {RUNE_C(0x0101FD), RUNE_C(0x0101FD)}, + {RUNE_C(0x0102E0), RUNE_C(0x0102E0)}, + {RUNE_C(0x010376), RUNE_C(0x01037A)}, + {RUNE_C(0x010780), RUNE_C(0x010785)}, + {RUNE_C(0x010787), RUNE_C(0x0107B0)}, + {RUNE_C(0x0107B2), RUNE_C(0x0107BA)}, + {RUNE_C(0x010A01), RUNE_C(0x010A03)}, + {RUNE_C(0x010A05), RUNE_C(0x010A06)}, + {RUNE_C(0x010A0C), RUNE_C(0x010A0F)}, + {RUNE_C(0x010A38), RUNE_C(0x010A3A)}, + {RUNE_C(0x010A3F), RUNE_C(0x010A3F)}, + {RUNE_C(0x010AE5), RUNE_C(0x010AE6)}, + {RUNE_C(0x010D24), RUNE_C(0x010D27)}, + {RUNE_C(0x010EAB), RUNE_C(0x010EAC)}, + {RUNE_C(0x010EFD), RUNE_C(0x010EFF)}, + {RUNE_C(0x010F46), RUNE_C(0x010F50)}, + {RUNE_C(0x010F82), RUNE_C(0x010F85)}, + {RUNE_C(0x011001), RUNE_C(0x011001)}, + {RUNE_C(0x011038), RUNE_C(0x011046)}, + {RUNE_C(0x011070), RUNE_C(0x011070)}, + {RUNE_C(0x011073), RUNE_C(0x011074)}, + {RUNE_C(0x01107F), RUNE_C(0x011081)}, + {RUNE_C(0x0110B3), RUNE_C(0x0110B6)}, + {RUNE_C(0x0110B9), RUNE_C(0x0110BA)}, + {RUNE_C(0x0110BD), RUNE_C(0x0110BD)}, + {RUNE_C(0x0110C2), RUNE_C(0x0110C2)}, + {RUNE_C(0x0110CD), RUNE_C(0x0110CD)}, + {RUNE_C(0x011100), RUNE_C(0x011102)}, + {RUNE_C(0x011127), RUNE_C(0x01112B)}, + {RUNE_C(0x01112D), RUNE_C(0x011134)}, + {RUNE_C(0x011173), RUNE_C(0x011173)}, + {RUNE_C(0x011180), RUNE_C(0x011181)}, + {RUNE_C(0x0111B6), RUNE_C(0x0111BE)}, + {RUNE_C(0x0111C9), RUNE_C(0x0111CC)}, + {RUNE_C(0x0111CF), RUNE_C(0x0111CF)}, + {RUNE_C(0x01122F), RUNE_C(0x011231)}, + {RUNE_C(0x011234), RUNE_C(0x011234)}, + {RUNE_C(0x011236), RUNE_C(0x011237)}, + {RUNE_C(0x01123E), RUNE_C(0x01123E)}, + {RUNE_C(0x011241), RUNE_C(0x011241)}, + {RUNE_C(0x0112DF), RUNE_C(0x0112DF)}, + {RUNE_C(0x0112E3), RUNE_C(0x0112EA)}, + {RUNE_C(0x011300), RUNE_C(0x011301)}, + {RUNE_C(0x01133B), RUNE_C(0x01133C)}, + {RUNE_C(0x011340), RUNE_C(0x011340)}, + {RUNE_C(0x011366), RUNE_C(0x01136C)}, + {RUNE_C(0x011370), RUNE_C(0x011374)}, + {RUNE_C(0x011438), RUNE_C(0x01143F)}, + {RUNE_C(0x011442), RUNE_C(0x011444)}, + {RUNE_C(0x011446), RUNE_C(0x011446)}, + {RUNE_C(0x01145E), RUNE_C(0x01145E)}, + {RUNE_C(0x0114B3), RUNE_C(0x0114B8)}, + {RUNE_C(0x0114BA), RUNE_C(0x0114BA)}, + {RUNE_C(0x0114BF), RUNE_C(0x0114C0)}, + {RUNE_C(0x0114C2), RUNE_C(0x0114C3)}, + {RUNE_C(0x0115B2), RUNE_C(0x0115B5)}, + {RUNE_C(0x0115BC), RUNE_C(0x0115BD)}, + {RUNE_C(0x0115BF), RUNE_C(0x0115C0)}, + {RUNE_C(0x0115DC), RUNE_C(0x0115DD)}, + {RUNE_C(0x011633), RUNE_C(0x01163A)}, + {RUNE_C(0x01163D), RUNE_C(0x01163D)}, + {RUNE_C(0x01163F), RUNE_C(0x011640)}, + {RUNE_C(0x0116AB), RUNE_C(0x0116AB)}, + {RUNE_C(0x0116AD), RUNE_C(0x0116AD)}, + {RUNE_C(0x0116B0), RUNE_C(0x0116B5)}, + {RUNE_C(0x0116B7), RUNE_C(0x0116B7)}, + {RUNE_C(0x01171D), RUNE_C(0x01171F)}, + {RUNE_C(0x011722), RUNE_C(0x011725)}, + {RUNE_C(0x011727), RUNE_C(0x01172B)}, + {RUNE_C(0x01182F), RUNE_C(0x011837)}, + {RUNE_C(0x011839), RUNE_C(0x01183A)}, + {RUNE_C(0x01193B), RUNE_C(0x01193C)}, + {RUNE_C(0x01193E), RUNE_C(0x01193E)}, + {RUNE_C(0x011943), RUNE_C(0x011943)}, + {RUNE_C(0x0119D4), RUNE_C(0x0119D7)}, + {RUNE_C(0x0119DA), RUNE_C(0x0119DB)}, + {RUNE_C(0x0119E0), RUNE_C(0x0119E0)}, + {RUNE_C(0x011A01), RUNE_C(0x011A0A)}, + {RUNE_C(0x011A33), RUNE_C(0x011A38)}, + {RUNE_C(0x011A3B), RUNE_C(0x011A3E)}, + {RUNE_C(0x011A47), RUNE_C(0x011A47)}, + {RUNE_C(0x011A51), RUNE_C(0x011A56)}, + {RUNE_C(0x011A59), RUNE_C(0x011A5B)}, + {RUNE_C(0x011A8A), RUNE_C(0x011A96)}, + {RUNE_C(0x011A98), RUNE_C(0x011A99)}, + {RUNE_C(0x011C30), RUNE_C(0x011C36)}, + {RUNE_C(0x011C38), RUNE_C(0x011C3D)}, + {RUNE_C(0x011C3F), RUNE_C(0x011C3F)}, + {RUNE_C(0x011C92), RUNE_C(0x011CA7)}, + {RUNE_C(0x011CAA), RUNE_C(0x011CB0)}, + {RUNE_C(0x011CB2), RUNE_C(0x011CB3)}, + {RUNE_C(0x011CB5), RUNE_C(0x011CB6)}, + {RUNE_C(0x011D31), RUNE_C(0x011D36)}, + {RUNE_C(0x011D3A), RUNE_C(0x011D3A)}, + {RUNE_C(0x011D3C), RUNE_C(0x011D3D)}, + {RUNE_C(0x011D3F), RUNE_C(0x011D45)}, + {RUNE_C(0x011D47), RUNE_C(0x011D47)}, + {RUNE_C(0x011D90), RUNE_C(0x011D91)}, + {RUNE_C(0x011D95), RUNE_C(0x011D95)}, + {RUNE_C(0x011D97), RUNE_C(0x011D97)}, + {RUNE_C(0x011EF3), RUNE_C(0x011EF4)}, + {RUNE_C(0x011F00), RUNE_C(0x011F01)}, + {RUNE_C(0x011F36), RUNE_C(0x011F3A)}, + {RUNE_C(0x011F40), RUNE_C(0x011F40)}, + {RUNE_C(0x011F42), RUNE_C(0x011F42)}, + {RUNE_C(0x013430), RUNE_C(0x013440)}, + {RUNE_C(0x013447), RUNE_C(0x013455)}, + {RUNE_C(0x016AF0), RUNE_C(0x016AF4)}, + {RUNE_C(0x016B30), RUNE_C(0x016B36)}, + {RUNE_C(0x016B40), RUNE_C(0x016B43)}, + {RUNE_C(0x016F4F), RUNE_C(0x016F4F)}, + {RUNE_C(0x016F8F), RUNE_C(0x016F9F)}, + {RUNE_C(0x016FE0), RUNE_C(0x016FE1)}, + {RUNE_C(0x016FE3), RUNE_C(0x016FE4)}, + {RUNE_C(0x01AFF0), RUNE_C(0x01AFF3)}, + {RUNE_C(0x01AFF5), RUNE_C(0x01AFFB)}, + {RUNE_C(0x01AFFD), RUNE_C(0x01AFFE)}, + {RUNE_C(0x01BC9D), RUNE_C(0x01BC9E)}, + {RUNE_C(0x01BCA0), RUNE_C(0x01BCA3)}, + {RUNE_C(0x01CF00), RUNE_C(0x01CF2D)}, + {RUNE_C(0x01CF30), RUNE_C(0x01CF46)}, + {RUNE_C(0x01D167), RUNE_C(0x01D169)}, + {RUNE_C(0x01D173), RUNE_C(0x01D182)}, + {RUNE_C(0x01D185), RUNE_C(0x01D18B)}, + {RUNE_C(0x01D1AA), RUNE_C(0x01D1AD)}, + {RUNE_C(0x01D242), RUNE_C(0x01D244)}, + {RUNE_C(0x01DA00), RUNE_C(0x01DA36)}, + {RUNE_C(0x01DA3B), RUNE_C(0x01DA6C)}, + {RUNE_C(0x01DA75), RUNE_C(0x01DA75)}, + {RUNE_C(0x01DA84), RUNE_C(0x01DA84)}, + {RUNE_C(0x01DA9B), RUNE_C(0x01DA9F)}, + {RUNE_C(0x01DAA1), RUNE_C(0x01DAAF)}, + {RUNE_C(0x01E000), RUNE_C(0x01E006)}, + {RUNE_C(0x01E008), RUNE_C(0x01E018)}, + {RUNE_C(0x01E01B), RUNE_C(0x01E021)}, + {RUNE_C(0x01E023), RUNE_C(0x01E024)}, + {RUNE_C(0x01E026), RUNE_C(0x01E02A)}, + {RUNE_C(0x01E030), RUNE_C(0x01E06D)}, + {RUNE_C(0x01E08F), RUNE_C(0x01E08F)}, + {RUNE_C(0x01E130), RUNE_C(0x01E13D)}, + {RUNE_C(0x01E2AE), RUNE_C(0x01E2AE)}, + {RUNE_C(0x01E2EC), RUNE_C(0x01E2EF)}, + {RUNE_C(0x01E4EB), RUNE_C(0x01E4EF)}, + {RUNE_C(0x01E8D0), RUNE_C(0x01E8D6)}, + {RUNE_C(0x01E944), RUNE_C(0x01E94B)}, + {RUNE_C(0x01F3FB), RUNE_C(0x01F3FF)}, + {RUNE_C(0x0E0001), RUNE_C(0x0E0001)}, + {RUNE_C(0x0E0020), RUNE_C(0x0E007F)}, + {RUNE_C(0x0E0100), RUNE_C(0x0E01EF)}, +}; + +__MLIB_DEFINE_BSEARCH_CONTAINS(lookup) + +bool +uprop_is_ci(rune ch) +{ + return ch <= LATIN1_MAX ? TESTBIT(bs, ch) : mlib_lookup_contains(ch); +} |