oxedyne/fe2o3/fe2o3_text/src/unicode/tables/bidi.rs
32.4 KiB, 1 run
created by r1870400018:13910, which is this file's identity for as long as the history lasts, whatever it is later renamed to
download · who wrote it · its history
| 1 | // GENERATED FILE. DO NOT EDIT. |
| 2 | // |
| 3 | // Tables for the bidirectional algorithm of UAX #9. |
| 4 | // |
| 5 | // Generated by fe2o3_text/src/bin/gen_unicode.rs from the Unicode Character Database, |
| 6 | // version 17.0.0, at https://www.unicode.org/Public/17.0.0/. |
| 7 | // Run `cargo run -p oxedyne_fe2o3_text --bin gen_unicode` to rebuild. |
| 8 | |
| 9 | |
| 10 | use crate::unicode::prop::BidiClass; |
| 11 | |
| 12 | /// Start code points of the Bidi_Class runs. |
| 13 | pub static BIDI_STARTS: [u32; 1267] = [ |
| 14 | 0x0, 0x9, 0xA, 0xB, 0xC, 0xD, 0xE, 0x1C, |
| 15 | 0x1F, 0x20, 0x21, 0x23, 0x26, 0x2B, 0x2C, 0x2D, |
| 16 | 0x2E, 0x30, 0x3A, 0x3B, 0x41, 0x5B, 0x61, 0x7B, |
| 17 | 0x7F, 0x85, 0x86, 0xA0, 0xA1, 0xA2, 0xA6, 0xAA, |
| 18 | 0xAB, 0xAD, 0xAE, 0xB0, 0xB2, 0xB4, 0xB5, 0xB6, |
| 19 | 0xB9, 0xBA, 0xBB, 0xC0, 0xD7, 0xD8, 0xF7, 0xF8, |
| 20 | 0x2B9, 0x2BB, 0x2C2, 0x2D0, 0x2D2, 0x2E0, 0x2E5, 0x2EE, |
| 21 | 0x2EF, 0x300, 0x370, 0x374, 0x376, 0x37E, 0x37F, 0x384, |
| 22 | 0x386, 0x387, 0x388, 0x3F6, 0x3F7, 0x483, 0x48A, 0x58A, |
| 23 | 0x58B, 0x58D, 0x58F, 0x590, 0x591, 0x5BE, 0x5BF, 0x5C0, |
| 24 | 0x5C1, 0x5C3, 0x5C4, 0x5C6, 0x5C7, 0x5C8, 0x600, 0x606, |
| 25 | 0x608, 0x609, 0x60B, 0x60C, 0x60D, 0x60E, 0x610, 0x61B, |
| 26 | 0x64B, 0x660, 0x66A, 0x66B, 0x66D, 0x670, 0x671, 0x6D6, |
| 27 | 0x6DD, 0x6DE, 0x6DF, 0x6E5, 0x6E7, 0x6E9, 0x6EA, 0x6EE, |
| 28 | 0x6F0, 0x6FA, 0x711, 0x712, 0x730, 0x74B, 0x7A6, 0x7B1, |
| 29 | 0x7C0, 0x7EB, 0x7F4, 0x7F6, 0x7FA, 0x7FD, 0x7FE, 0x816, |
| 30 | 0x81A, 0x81B, 0x824, 0x825, 0x828, 0x829, 0x82E, 0x859, |
| 31 | 0x85C, 0x860, 0x890, 0x892, 0x897, 0x8A0, 0x8CA, 0x8E2, |
| 32 | 0x8E3, 0x903, 0x93A, 0x93B, 0x93C, 0x93D, 0x941, 0x949, |
| 33 | 0x94D, 0x94E, 0x951, 0x958, 0x962, 0x964, 0x981, 0x982, |
| 34 | 0x9BC, 0x9BD, 0x9C1, 0x9C5, 0x9CD, 0x9CE, 0x9E2, 0x9E4, |
| 35 | 0x9F2, 0x9F4, 0x9FB, 0x9FC, 0x9FE, 0x9FF, 0xA01, 0xA03, |
| 36 | 0xA3C, 0xA3D, 0xA41, 0xA43, 0xA47, 0xA49, 0xA4B, 0xA4E, |
| 37 | 0xA51, 0xA52, 0xA70, 0xA72, 0xA75, 0xA76, 0xA81, 0xA83, |
| 38 | 0xABC, 0xABD, 0xAC1, 0xAC6, 0xAC7, 0xAC9, 0xACD, 0xACE, |
| 39 | 0xAE2, 0xAE4, 0xAF1, 0xAF2, 0xAFA, 0xB00, 0xB01, 0xB02, |
| 40 | 0xB3C, 0xB3D, 0xB3F, 0xB40, 0xB41, 0xB45, 0xB4D, 0xB4E, |
| 41 | 0xB55, 0xB57, 0xB62, 0xB64, 0xB82, 0xB83, 0xBC0, 0xBC1, |
| 42 | 0xBCD, 0xBCE, 0xBF3, 0xBF9, 0xBFA, 0xBFB, 0xC00, 0xC01, |
| 43 | 0xC04, 0xC05, 0xC3C, 0xC3D, 0xC3E, 0xC41, 0xC46, 0xC49, |
| 44 | 0xC4A, 0xC4E, 0xC55, 0xC57, 0xC62, 0xC64, 0xC78, 0xC7F, |
| 45 | 0xC81, 0xC82, 0xCBC, 0xCBD, 0xCCC, 0xCCE, 0xCE2, 0xCE4, |
| 46 | 0xD00, 0xD02, 0xD3B, 0xD3D, 0xD41, 0xD45, 0xD4D, 0xD4E, |
| 47 | 0xD62, 0xD64, 0xD81, 0xD82, 0xDCA, 0xDCB, 0xDD2, 0xDD5, |
| 48 | 0xDD6, 0xDD7, 0xE31, 0xE32, 0xE34, 0xE3B, 0xE3F, 0xE40, |
| 49 | 0xE47, 0xE4F, 0xEB1, 0xEB2, 0xEB4, 0xEBD, 0xEC8, 0xECF, |
| 50 | 0xF18, 0xF1A, 0xF35, 0xF36, 0xF37, 0xF38, 0xF39, 0xF3A, |
| 51 | 0xF3E, 0xF71, 0xF7F, 0xF80, 0xF85, 0xF86, 0xF88, 0xF8D, |
| 52 | 0xF98, 0xF99, 0xFBD, 0xFC6, 0xFC7, 0x102D, 0x1031, 0x1032, |
| 53 | 0x1038, 0x1039, 0x103B, 0x103D, 0x103F, 0x1058, 0x105A, 0x105E, |
| 54 | 0x1061, 0x1071, 0x1075, 0x1082, 0x1083, 0x1085, 0x1087, 0x108D, |
| 55 | 0x108E, 0x109D, 0x109E, 0x135D, 0x1360, 0x1390, 0x139A, 0x1400, |
| 56 | 0x1401, 0x1680, 0x1681, 0x169B, 0x169D, 0x1712, 0x1715, 0x1732, |
| 57 | 0x1734, 0x1752, 0x1754, 0x1772, 0x1774, 0x17B4, 0x17B6, 0x17B7, |
| 58 | 0x17BE, 0x17C6, 0x17C7, 0x17C9, 0x17D4, 0x17DB, 0x17DC, 0x17DD, |
| 59 | 0x17DE, 0x17F0, 0x17FA, 0x1800, 0x180B, 0x180E, 0x180F, 0x1810, |
| 60 | 0x1885, 0x1887, 0x18A9, 0x18AA, 0x1920, 0x1923, 0x1927, 0x1929, |
| 61 | 0x1932, 0x1933, 0x1939, 0x193C, 0x1940, 0x1941, 0x1944, 0x1946, |
| 62 | 0x19DE, 0x1A00, 0x1A17, 0x1A19, 0x1A1B, 0x1A1C, 0x1A56, 0x1A57, |
| 63 | 0x1A58, 0x1A5F, 0x1A60, 0x1A61, 0x1A62, 0x1A63, 0x1A65, 0x1A6D, |
| 64 | 0x1A73, 0x1A7D, 0x1A7F, 0x1A80, 0x1AB0, 0x1ADE, 0x1AE0, 0x1AEC, |
| 65 | 0x1B00, 0x1B04, 0x1B34, 0x1B35, 0x1B36, 0x1B3B, 0x1B3C, 0x1B3D, |
| 66 | 0x1B42, 0x1B43, 0x1B6B, 0x1B74, 0x1B80, 0x1B82, 0x1BA2, 0x1BA6, |
| 67 | 0x1BA8, 0x1BAA, 0x1BAB, 0x1BAE, 0x1BE6, 0x1BE7, 0x1BE8, 0x1BEA, |
| 68 | 0x1BED, 0x1BEE, 0x1BEF, 0x1BF2, 0x1C2C, 0x1C34, 0x1C36, 0x1C38, |
| 69 | 0x1CD0, 0x1CD3, 0x1CD4, 0x1CE1, 0x1CE2, 0x1CE9, 0x1CED, 0x1CEE, |
| 70 | 0x1CF4, 0x1CF5, 0x1CF8, 0x1CFA, 0x1DC0, 0x1E00, 0x1FBD, 0x1FBE, |
| 71 | 0x1FBF, 0x1FC2, 0x1FCD, 0x1FD0, 0x1FDD, 0x1FE0, 0x1FED, 0x1FF0, |
| 72 | 0x1FFD, 0x1FFF, 0x2000, 0x200B, 0x200E, 0x200F, 0x2010, 0x2028, |
| 73 | 0x2029, 0x202A, 0x202B, 0x202C, 0x202D, 0x202E, 0x202F, 0x2030, |
| 74 | 0x2035, 0x2044, 0x2045, 0x205F, 0x2060, 0x2066, 0x2067, 0x2068, |
| 75 | 0x2069, 0x206A, 0x2070, 0x2071, 0x2074, 0x207A, 0x207C, 0x207F, |
| 76 | 0x2080, 0x208A, 0x208C, 0x208F, 0x20A0, 0x20D0, 0x20F1, 0x2100, |
| 77 | 0x2102, 0x2103, 0x2107, 0x2108, 0x210A, 0x2114, 0x2115, 0x2116, |
| 78 | 0x2119, 0x211E, 0x2124, 0x2125, 0x2126, 0x2127, 0x2128, 0x2129, |
| 79 | 0x212A, 0x212E, 0x212F, 0x213A, 0x213C, 0x2140, 0x2145, 0x214A, |
| 80 | 0x214E, 0x2150, 0x2160, 0x2189, 0x218C, 0x2190, 0x2212, 0x2213, |
| 81 | 0x2214, 0x2336, 0x237B, 0x2395, 0x2396, 0x242A, 0x2440, 0x244B, |
| 82 | 0x2460, 0x2488, 0x249C, 0x24EA, 0x26AC, 0x26AD, 0x2800, 0x2900, |
| 83 | 0x2B74, 0x2B76, 0x2C00, 0x2CE5, 0x2CEB, 0x2CEF, 0x2CF2, 0x2CF9, |
| 84 | 0x2D00, 0x2D7F, 0x2D80, 0x2DE0, 0x2E00, 0x2E5E, 0x2E80, 0x2E9A, |
| 85 | 0x2E9B, 0x2EF4, 0x2F00, 0x2FD6, 0x2FF0, 0x3000, 0x3001, 0x3005, |
| 86 | 0x3008, 0x3021, 0x302A, 0x302E, 0x3030, 0x3031, 0x3036, 0x3038, |
| 87 | 0x303D, 0x3040, 0x3099, 0x309B, 0x309D, 0x30A0, 0x30A1, 0x30FB, |
| 88 | 0x30FC, 0x31C0, 0x31E6, 0x31EF, 0x31F0, 0x321D, 0x321F, 0x3250, |
| 89 | 0x3260, 0x327C, 0x327F, 0x32B1, 0x32C0, 0x32CC, 0x32D0, 0x3377, |
| 90 | 0x337B, 0x33DE, 0x33E0, 0x33FF, 0x3400, 0x4DC0, 0x4E00, 0xA490, |
| 91 | 0xA4C7, 0xA60D, 0xA610, 0xA66F, 0xA673, 0xA674, 0xA67E, 0xA680, |
| 92 | 0xA69E, 0xA6A0, 0xA6F0, 0xA6F2, 0xA700, 0xA722, 0xA788, 0xA789, |
| 93 | 0xA802, 0xA803, 0xA806, 0xA807, 0xA80B, 0xA80C, 0xA825, 0xA827, |
| 94 | 0xA828, 0xA82C, 0xA82D, 0xA838, 0xA83A, 0xA874, 0xA878, 0xA8C4, |
| 95 | 0xA8C6, 0xA8E0, 0xA8F2, 0xA8FF, 0xA900, 0xA926, 0xA92E, 0xA947, |
| 96 | 0xA952, 0xA980, 0xA983, 0xA9B3, 0xA9B4, 0xA9B6, 0xA9BA, 0xA9BC, |
| 97 | 0xA9BE, 0xA9E5, 0xA9E6, 0xAA29, 0xAA2F, 0xAA31, 0xAA33, 0xAA35, |
| 98 | 0xAA37, 0xAA43, 0xAA44, 0xAA4C, 0xAA4D, 0xAA7C, 0xAA7D, 0xAAB0, |
| 99 | 0xAAB1, 0xAAB2, 0xAAB5, 0xAAB7, 0xAAB9, 0xAABE, 0xAAC0, 0xAAC1, |
| 100 | 0xAAC2, 0xAAEC, 0xAAEE, 0xAAF6, 0xAAF7, 0xAB6A, 0xAB6C, 0xABE5, |
| 101 | 0xABE6, 0xABE8, 0xABE9, 0xABED, 0xABEE, 0xFB1D, 0xFB1E, 0xFB1F, |
| 102 | 0xFB29, 0xFB2A, 0xFB50, 0xFBC3, 0xFBD3, 0xFD3E, 0xFD50, 0xFD90, |
| 103 | 0xFD92, 0xFDC8, 0xFDD0, 0xFDF0, 0xFDFD, 0xFE00, 0xFE10, 0xFE1A, |
| 104 | 0xFE20, 0xFE30, 0xFE50, 0xFE51, 0xFE52, 0xFE53, 0xFE54, 0xFE55, |
| 105 | 0xFE56, 0xFE5F, 0xFE60, 0xFE62, 0xFE64, 0xFE67, 0xFE68, 0xFE69, |
| 106 | 0xFE6B, 0xFE6C, 0xFE70, 0xFEFF, 0xFF00, 0xFF01, 0xFF03, 0xFF06, |
| 107 | 0xFF0B, 0xFF0C, 0xFF0D, 0xFF0E, 0xFF10, 0xFF1A, 0xFF1B, 0xFF21, |
| 108 | 0xFF3B, 0xFF41, 0xFF5B, 0xFF66, 0xFFE0, 0xFFE2, 0xFFE5, 0xFFE7, |
| 109 | 0xFFE8, 0xFFEF, 0xFFF0, 0xFFF9, 0xFFFE, 0x10000, 0x10101, 0x10102, |
| 110 | 0x10140, 0x1018D, 0x10190, 0x1019D, 0x101A0, 0x101A1, 0x101FD, 0x101FE, |
| 111 | 0x102E0, 0x102E1, 0x102FC, 0x10376, 0x1037B, 0x10800, 0x1091F, 0x10920, |
| 112 | 0x10A01, 0x10A04, 0x10A05, 0x10A07, 0x10A0C, 0x10A10, 0x10A38, 0x10A3B, |
| 113 | 0x10A3F, 0x10A40, 0x10AE5, 0x10AE7, 0x10B39, 0x10B40, 0x10D00, 0x10D24, |
| 114 | 0x10D28, 0x10D30, 0x10D3A, 0x10D40, 0x10D4A, 0x10D69, 0x10D6E, 0x10D6F, |
| 115 | 0x10E60, 0x10E7F, 0x10EAB, 0x10EAD, 0x10EC0, 0x10ED0, 0x10ED9, 0x10EFA, |
| 116 | 0x10F00, 0x10F30, 0x10F46, 0x10F51, 0x10F70, 0x10F82, 0x10F86, 0x11000, |
| 117 | 0x11001, 0x11002, 0x11038, 0x11047, 0x11052, 0x11066, 0x11070, 0x11071, |
| 118 | 0x11073, 0x11075, 0x1107F, 0x11082, 0x110B3, 0x110B7, 0x110B9, 0x110BB, |
| 119 | 0x110C2, 0x110C3, 0x11100, 0x11103, 0x11127, 0x1112C, 0x1112D, 0x11135, |
| 120 | 0x11173, 0x11174, 0x11180, 0x11182, 0x111B6, 0x111BF, 0x111C9, 0x111CD, |
| 121 | 0x111CF, 0x111D0, 0x1122F, 0x11232, 0x11234, 0x11235, 0x11236, 0x11238, |
| 122 | 0x1123E, 0x1123F, 0x11241, 0x11242, 0x112DF, 0x112E0, 0x112E3, 0x112EB, |
| 123 | 0x11300, 0x11302, 0x1133B, 0x1133D, 0x11340, 0x11341, 0x11366, 0x1136D, |
| 124 | 0x11370, 0x11375, 0x113BB, 0x113C1, 0x113CE, 0x113CF, 0x113D0, 0x113D1, |
| 125 | 0x113D2, 0x113D3, 0x113E1, 0x113E3, 0x11438, 0x11440, 0x11442, 0x11445, |
| 126 | 0x11446, 0x11447, 0x1145E, 0x1145F, 0x114B3, 0x114B9, 0x114BA, 0x114BB, |
| 127 | 0x114BF, 0x114C1, 0x114C2, 0x114C4, 0x115B2, 0x115B6, 0x115BC, 0x115BE, |
| 128 | 0x115BF, 0x115C1, 0x115DC, 0x115DE, 0x11633, 0x1163B, 0x1163D, 0x1163E, |
| 129 | 0x1163F, 0x11641, 0x11660, 0x1166D, 0x116AB, 0x116AC, 0x116AD, 0x116AE, |
| 130 | 0x116B0, 0x116B6, 0x116B7, 0x116B8, 0x1171D, 0x1171E, 0x1171F, 0x11720, |
| 131 | 0x11722, 0x11726, 0x11727, 0x1172C, 0x1182F, 0x11838, 0x11839, 0x1183B, |
| 132 | 0x1193B, 0x1193D, 0x1193E, 0x1193F, 0x11943, 0x11944, 0x119D4, 0x119D8, |
| 133 | 0x119DA, 0x119DC, 0x119E0, 0x119E1, 0x11A01, 0x11A07, 0x11A09, 0x11A0B, |
| 134 | 0x11A33, 0x11A39, 0x11A3B, 0x11A3F, 0x11A47, 0x11A48, 0x11A51, 0x11A57, |
| 135 | 0x11A59, 0x11A5C, 0x11A8A, 0x11A97, 0x11A98, 0x11A9A, 0x11B60, 0x11B61, |
| 136 | 0x11B62, 0x11B65, 0x11B66, 0x11B67, 0x11C30, 0x11C37, 0x11C38, 0x11C3E, |
| 137 | 0x11C92, 0x11CA8, 0x11CAA, 0x11CB1, 0x11CB2, 0x11CB4, 0x11CB5, 0x11CB7, |
| 138 | 0x11D31, 0x11D37, 0x11D3A, 0x11D3B, 0x11D3C, 0x11D3E, 0x11D3F, 0x11D46, |
| 139 | 0x11D47, 0x11D48, 0x11D90, 0x11D92, 0x11D95, 0x11D96, 0x11D97, 0x11D98, |
| 140 | 0x11EF3, 0x11EF5, 0x11F00, 0x11F02, 0x11F36, 0x11F3B, 0x11F40, 0x11F41, |
| 141 | 0x11F42, 0x11F43, 0x11F5A, 0x11F5B, 0x11FD5, 0x11FDD, 0x11FE1, 0x11FF2, |
| 142 | 0x13440, 0x13441, 0x13447, 0x13456, 0x1611E, 0x1612A, 0x1612D, 0x16130, |
| 143 | 0x16AF0, 0x16AF5, 0x16B30, 0x16B37, 0x16F4F, 0x16F50, 0x16F8F, 0x16F93, |
| 144 | 0x16FE2, 0x16FE3, 0x16FE4, 0x16FE5, 0x1BC9D, 0x1BC9F, 0x1BCA0, 0x1BCA4, |
| 145 | 0x1CC00, 0x1CCD6, 0x1CCF0, 0x1CCFA, 0x1CCFD, 0x1CD00, 0x1CEB4, 0x1CEBA, |
| 146 | 0x1CED1, 0x1CEE0, 0x1CEF1, 0x1CF00, 0x1CF2E, 0x1CF30, 0x1CF47, 0x1D167, |
| 147 | 0x1D16A, 0x1D173, 0x1D17B, 0x1D183, 0x1D185, 0x1D18C, 0x1D1AA, 0x1D1AE, |
| 148 | 0x1D1E9, 0x1D1EB, 0x1D200, 0x1D242, 0x1D245, 0x1D246, 0x1D300, 0x1D357, |
| 149 | 0x1D6C1, 0x1D6C2, 0x1D6DB, 0x1D6DC, 0x1D6FB, 0x1D6FC, 0x1D715, 0x1D716, |
| 150 | 0x1D735, 0x1D736, 0x1D74F, 0x1D750, 0x1D76F, 0x1D770, 0x1D789, 0x1D78A, |
| 151 | 0x1D7A9, 0x1D7AA, 0x1D7C3, 0x1D7C4, 0x1D7CE, 0x1D800, 0x1DA00, 0x1DA37, |
| 152 | 0x1DA3B, 0x1DA6D, 0x1DA75, 0x1DA76, 0x1DA84, 0x1DA85, 0x1DA9B, 0x1DAA0, |
| 153 | 0x1DAA1, 0x1DAB0, 0x1E000, 0x1E007, 0x1E008, 0x1E019, 0x1E01B, 0x1E022, |
| 154 | 0x1E023, 0x1E025, 0x1E026, 0x1E02B, 0x1E08F, 0x1E090, 0x1E130, 0x1E137, |
| 155 | 0x1E2AE, 0x1E2AF, 0x1E2EC, 0x1E2F0, 0x1E2FF, 0x1E300, 0x1E4EC, 0x1E4F0, |
| 156 | 0x1E5EE, 0x1E5F0, 0x1E6E3, 0x1E6E4, 0x1E6E6, 0x1E6E7, 0x1E6EE, 0x1E6F0, |
| 157 | 0x1E6F5, 0x1E6F6, 0x1E800, 0x1E8D0, 0x1E8D7, 0x1E944, 0x1E94B, 0x1EC70, |
| 158 | 0x1ECC0, 0x1ED00, 0x1ED50, 0x1EE00, 0x1EEF0, 0x1EEF2, 0x1EF00, 0x1F000, |
| 159 | 0x1F02C, 0x1F030, 0x1F094, 0x1F0A0, 0x1F0AF, 0x1F0B1, 0x1F0C0, 0x1F0C1, |
| 160 | 0x1F0D0, 0x1F0D1, 0x1F0F6, 0x1F100, 0x1F10B, 0x1F110, 0x1F12F, 0x1F130, |
| 161 | 0x1F16A, 0x1F170, 0x1F1AD, 0x1F1AE, 0x1F260, 0x1F266, 0x1F300, 0x1F6D9, |
| 162 | 0x1F6DC, 0x1F6ED, 0x1F6F0, 0x1F6FD, 0x1F700, 0x1F7DA, 0x1F7E0, 0x1F7EC, |
| 163 | 0x1F7F0, 0x1F7F1, 0x1F800, 0x1F80C, 0x1F810, 0x1F848, 0x1F850, 0x1F85A, |
| 164 | 0x1F860, 0x1F888, 0x1F890, 0x1F8AE, 0x1F8B0, 0x1F8BC, 0x1F8C0, 0x1F8C2, |
| 165 | 0x1F8D0, 0x1F8D9, 0x1F900, 0x1FA58, 0x1FA60, 0x1FA6E, 0x1FA70, 0x1FA7D, |
| 166 | 0x1FA80, 0x1FA8B, 0x1FA8E, 0x1FAC7, 0x1FAC8, 0x1FAC9, 0x1FACD, 0x1FADD, |
| 167 | 0x1FADF, 0x1FAEB, 0x1FAEF, 0x1FAF9, 0x1FB00, 0x1FB93, 0x1FB94, 0x1FBF0, |
| 168 | 0x1FBFA, 0x1FBFB, 0x1FFFE, 0x20000, 0x2FFFE, 0x30000, 0x3FFFE, 0x40000, |
| 169 | 0x4FFFE, 0x50000, 0x5FFFE, 0x60000, 0x6FFFE, 0x70000, 0x7FFFE, 0x80000, |
| 170 | 0x8FFFE, 0x90000, 0x9FFFE, 0xA0000, 0xAFFFE, 0xB0000, 0xBFFFE, 0xC0000, |
| 171 | 0xCFFFE, 0xD0000, 0xDFFFE, 0xE0100, 0xE01F0, 0xE1000, 0xEFFFE, 0xF0000, |
| 172 | 0xFFFFE, 0x100000, 0x10FFFE, |
| 173 | ]; |
| 174 | |
| 175 | /// The Bidi_Class of each run. |
| 176 | pub static BIDI_VALS: [BidiClass; 1267] = [ |
| 177 | BidiClass::BN, BidiClass::S, BidiClass::B, BidiClass::S, BidiClass::WS, BidiClass::B, BidiClass::BN, BidiClass::B, |
| 178 | BidiClass::S, BidiClass::WS, BidiClass::ON, BidiClass::ET, BidiClass::ON, BidiClass::ES, BidiClass::CS, BidiClass::ES, |
| 179 | BidiClass::CS, BidiClass::EN, BidiClass::CS, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 180 | BidiClass::BN, BidiClass::B, BidiClass::BN, BidiClass::CS, BidiClass::ON, BidiClass::ET, BidiClass::ON, BidiClass::L, |
| 181 | BidiClass::ON, BidiClass::BN, BidiClass::ON, BidiClass::ET, BidiClass::EN, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 182 | BidiClass::EN, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 183 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 184 | BidiClass::ON, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 185 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, |
| 186 | BidiClass::L, BidiClass::ON, BidiClass::ET, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, |
| 187 | BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::AN, BidiClass::ON, |
| 188 | BidiClass::AL, BidiClass::ET, BidiClass::AL, BidiClass::CS, BidiClass::AL, BidiClass::ON, BidiClass::NSM, BidiClass::AL, |
| 189 | BidiClass::NSM, BidiClass::AN, BidiClass::ET, BidiClass::AN, BidiClass::AL, BidiClass::NSM, BidiClass::AL, BidiClass::NSM, |
| 190 | BidiClass::AN, BidiClass::ON, BidiClass::NSM, BidiClass::AL, BidiClass::NSM, BidiClass::ON, BidiClass::NSM, BidiClass::AL, |
| 191 | BidiClass::EN, BidiClass::AL, BidiClass::NSM, BidiClass::AL, BidiClass::NSM, BidiClass::AL, BidiClass::NSM, BidiClass::AL, |
| 192 | BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::ON, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, |
| 193 | BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, |
| 194 | BidiClass::R, BidiClass::AL, BidiClass::AN, BidiClass::AL, BidiClass::NSM, BidiClass::AL, BidiClass::NSM, BidiClass::AN, |
| 195 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 196 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 197 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 198 | BidiClass::ET, BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 199 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 200 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 201 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 202 | BidiClass::NSM, BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 203 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 204 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 205 | BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::ET, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 206 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 207 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 208 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 209 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 210 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 211 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ET, BidiClass::L, |
| 212 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 213 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::ON, |
| 214 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 215 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 216 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 217 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 218 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 219 | BidiClass::L, BidiClass::WS, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 220 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 221 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::NSM, |
| 222 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::NSM, BidiClass::BN, BidiClass::NSM, BidiClass::L, |
| 223 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 224 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 225 | BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 226 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 227 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 228 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 229 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 230 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 231 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 232 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 233 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 234 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 235 | BidiClass::ON, BidiClass::L, BidiClass::WS, BidiClass::BN, BidiClass::L, BidiClass::R, BidiClass::ON, BidiClass::WS, |
| 236 | BidiClass::B, BidiClass::LRE, BidiClass::RLE, BidiClass::PDF, BidiClass::LRO, BidiClass::RLO, BidiClass::CS, BidiClass::ET, |
| 237 | BidiClass::ON, BidiClass::CS, BidiClass::ON, BidiClass::WS, BidiClass::BN, BidiClass::LRI, BidiClass::RLI, BidiClass::FSI, |
| 238 | BidiClass::PDI, BidiClass::BN, BidiClass::EN, BidiClass::L, BidiClass::EN, BidiClass::ES, BidiClass::ON, BidiClass::L, |
| 239 | BidiClass::EN, BidiClass::ES, BidiClass::ON, BidiClass::L, BidiClass::ET, BidiClass::NSM, BidiClass::L, BidiClass::ON, |
| 240 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 241 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 242 | BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 243 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::ES, BidiClass::ET, |
| 244 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 245 | BidiClass::ON, BidiClass::EN, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 246 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, |
| 247 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 248 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::WS, BidiClass::ON, BidiClass::L, |
| 249 | BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 250 | BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 251 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 252 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 253 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 254 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::ON, BidiClass::NSM, BidiClass::ON, BidiClass::L, |
| 255 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 256 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 257 | BidiClass::ON, BidiClass::NSM, BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, |
| 258 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 259 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 260 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 261 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 262 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 263 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, |
| 264 | BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::R, BidiClass::NSM, BidiClass::R, |
| 265 | BidiClass::ES, BidiClass::R, BidiClass::AL, BidiClass::ON, BidiClass::AL, BidiClass::ON, BidiClass::AL, BidiClass::ON, |
| 266 | BidiClass::AL, BidiClass::ON, BidiClass::BN, BidiClass::AL, BidiClass::ON, BidiClass::NSM, BidiClass::ON, BidiClass::L, |
| 267 | BidiClass::NSM, BidiClass::ON, BidiClass::CS, BidiClass::ON, BidiClass::CS, BidiClass::L, BidiClass::ON, BidiClass::CS, |
| 268 | BidiClass::ON, BidiClass::ET, BidiClass::ON, BidiClass::ES, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::ET, |
| 269 | BidiClass::ON, BidiClass::L, BidiClass::AL, BidiClass::BN, BidiClass::L, BidiClass::ON, BidiClass::ET, BidiClass::ON, |
| 270 | BidiClass::ES, BidiClass::CS, BidiClass::ES, BidiClass::CS, BidiClass::EN, BidiClass::CS, BidiClass::ON, BidiClass::L, |
| 271 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ET, BidiClass::ON, BidiClass::ET, BidiClass::L, |
| 272 | BidiClass::ON, BidiClass::L, BidiClass::BN, BidiClass::ON, BidiClass::BN, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 273 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 274 | BidiClass::NSM, BidiClass::EN, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::R, BidiClass::ON, BidiClass::R, |
| 275 | BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, |
| 276 | BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::ON, BidiClass::R, BidiClass::AL, BidiClass::NSM, |
| 277 | BidiClass::AL, BidiClass::AN, BidiClass::AL, BidiClass::AN, BidiClass::R, BidiClass::NSM, BidiClass::ON, BidiClass::R, |
| 278 | BidiClass::AN, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::AL, BidiClass::ON, BidiClass::AL, BidiClass::NSM, |
| 279 | BidiClass::R, BidiClass::AL, BidiClass::NSM, BidiClass::AL, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::L, |
| 280 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 281 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 282 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 283 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 284 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 285 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 286 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 287 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 288 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 289 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 290 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 291 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 292 | BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 293 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 294 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 295 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 296 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 297 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 298 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 299 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 300 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 301 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 302 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 303 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 304 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ON, BidiClass::ET, BidiClass::ON, BidiClass::L, |
| 305 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 306 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 307 | BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::BN, BidiClass::L, |
| 308 | BidiClass::ON, BidiClass::L, BidiClass::EN, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 309 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, |
| 310 | BidiClass::L, BidiClass::BN, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 311 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::NSM, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 312 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 313 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 314 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::EN, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 315 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 316 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 317 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 318 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::ET, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 319 | BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, BidiClass::NSM, BidiClass::L, |
| 320 | BidiClass::NSM, BidiClass::L, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::NSM, BidiClass::R, BidiClass::AL, |
| 321 | BidiClass::R, BidiClass::AL, BidiClass::R, BidiClass::AL, BidiClass::ON, BidiClass::AL, BidiClass::R, BidiClass::ON, |
| 322 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, |
| 323 | BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::EN, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 324 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 325 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 326 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 327 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 328 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 329 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, |
| 330 | BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::L, BidiClass::ON, BidiClass::EN, |
| 331 | BidiClass::ON, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, |
| 332 | BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, |
| 333 | BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, |
| 334 | BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::NSM, BidiClass::BN, BidiClass::L, BidiClass::BN, BidiClass::L, |
| 335 | BidiClass::BN, BidiClass::L, BidiClass::BN, |
| 336 | ]; |
| 337 | |
| 338 | /// The paired bracket code points, sorted. |
| 339 | pub static BRACKET_KEYS: [u32; 128] = [ |
| 340 | 0x28, 0x29, 0x5B, 0x5D, 0x7B, 0x7D, 0xF3A, 0xF3B, |
| 341 | 0xF3C, 0xF3D, 0x169B, 0x169C, 0x2045, 0x2046, 0x207D, 0x207E, |
| 342 | 0x208D, 0x208E, 0x2308, 0x2309, 0x230A, 0x230B, 0x2329, 0x232A, |
| 343 | 0x2768, 0x2769, 0x276A, 0x276B, 0x276C, 0x276D, 0x276E, 0x276F, |
| 344 | 0x2770, 0x2771, 0x2772, 0x2773, 0x2774, 0x2775, 0x27C5, 0x27C6, |
| 345 | 0x27E6, 0x27E7, 0x27E8, 0x27E9, 0x27EA, 0x27EB, 0x27EC, 0x27ED, |
| 346 | 0x27EE, 0x27EF, 0x2983, 0x2984, 0x2985, 0x2986, 0x2987, 0x2988, |
| 347 | 0x2989, 0x298A, 0x298B, 0x298C, 0x298D, 0x298E, 0x298F, 0x2990, |
| 348 | 0x2991, 0x2992, 0x2993, 0x2994, 0x2995, 0x2996, 0x2997, 0x2998, |
| 349 | 0x29D8, 0x29D9, 0x29DA, 0x29DB, 0x29FC, 0x29FD, 0x2E22, 0x2E23, |
| 350 | 0x2E24, 0x2E25, 0x2E26, 0x2E27, 0x2E28, 0x2E29, 0x2E55, 0x2E56, |
| 351 | 0x2E57, 0x2E58, 0x2E59, 0x2E5A, 0x2E5B, 0x2E5C, 0x3008, 0x3009, |
| 352 | 0x300A, 0x300B, 0x300C, 0x300D, 0x300E, 0x300F, 0x3010, 0x3011, |
| 353 | 0x3014, 0x3015, 0x3016, 0x3017, 0x3018, 0x3019, 0x301A, 0x301B, |
| 354 | 0xFE59, 0xFE5A, 0xFE5B, 0xFE5C, 0xFE5D, 0xFE5E, 0xFF08, 0xFF09, |
| 355 | 0xFF3B, 0xFF3D, 0xFF5B, 0xFF5D, 0xFF5F, 0xFF60, 0xFF62, 0xFF63, |
| 356 | ]; |
| 357 | |
| 358 | /// The bracket each key pairs with. |
| 359 | pub static BRACKET_PAIRS: [char; 128] = [ |
| 360 | '\u{29}', '\u{28}', '\u{5D}', '\u{5B}', '\u{7D}', '\u{7B}', '\u{F3B}', '\u{F3A}', |
| 361 | '\u{F3D}', '\u{F3C}', '\u{169C}', '\u{169B}', '\u{2046}', '\u{2045}', '\u{207E}', '\u{207D}', |
| 362 | '\u{208E}', '\u{208D}', '\u{2309}', '\u{2308}', '\u{230B}', '\u{230A}', '\u{232A}', '\u{2329}', |
| 363 | '\u{2769}', '\u{2768}', '\u{276B}', '\u{276A}', '\u{276D}', '\u{276C}', '\u{276F}', '\u{276E}', |
| 364 | '\u{2771}', '\u{2770}', '\u{2773}', '\u{2772}', '\u{2775}', '\u{2774}', '\u{27C6}', '\u{27C5}', |
| 365 | '\u{27E7}', '\u{27E6}', '\u{27E9}', '\u{27E8}', '\u{27EB}', '\u{27EA}', '\u{27ED}', '\u{27EC}', |
| 366 | '\u{27EF}', '\u{27EE}', '\u{2984}', '\u{2983}', '\u{2986}', '\u{2985}', '\u{2988}', '\u{2987}', |
| 367 | '\u{298A}', '\u{2989}', '\u{298C}', '\u{298B}', '\u{2990}', '\u{298F}', '\u{298E}', '\u{298D}', |
| 368 | '\u{2992}', '\u{2991}', '\u{2994}', '\u{2993}', '\u{2996}', '\u{2995}', '\u{2998}', '\u{2997}', |
| 369 | '\u{29D9}', '\u{29D8}', '\u{29DB}', '\u{29DA}', '\u{29FD}', '\u{29FC}', '\u{2E23}', '\u{2E22}', |
| 370 | '\u{2E25}', '\u{2E24}', '\u{2E27}', '\u{2E26}', '\u{2E29}', '\u{2E28}', '\u{2E56}', '\u{2E55}', |
| 371 | '\u{2E58}', '\u{2E57}', '\u{2E5A}', '\u{2E59}', '\u{2E5C}', '\u{2E5B}', '\u{3009}', '\u{3008}', |
| 372 | '\u{300B}', '\u{300A}', '\u{300D}', '\u{300C}', '\u{300F}', '\u{300E}', '\u{3011}', '\u{3010}', |
| 373 | '\u{3015}', '\u{3014}', '\u{3017}', '\u{3016}', '\u{3019}', '\u{3018}', '\u{301B}', '\u{301A}', |
| 374 | '\u{FE5A}', '\u{FE59}', '\u{FE5C}', '\u{FE5B}', '\u{FE5E}', '\u{FE5D}', '\u{FF09}', '\u{FF08}', |
| 375 | '\u{FF3D}', '\u{FF3B}', '\u{FF5D}', '\u{FF5B}', '\u{FF60}', '\u{FF5F}', '\u{FF63}', '\u{FF62}', |
| 376 | ]; |
| 377 | |
| 378 | /// The kind of each bracket: 0 opening, 1 closing. |
| 379 | pub static BRACKET_KINDS: [u8; 128] = [ |
| 380 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 381 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 382 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 383 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 384 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 385 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 386 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 387 | 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
| 388 | ]; |
| 389 |