tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Math.js (6885B)


      1 // Copyright 2025 Mathias Bynens. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 
      4 /*---
      5 author: Mathias Bynens
      6 description: >
      7  Unicode property escapes for `Math`
      8 info: |
      9  Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
     10  Unicode v17.0.0
     11 esid: sec-static-semantics-unicodematchproperty-p
     12 features: [regexp-unicode-property-escapes]
     13 includes: [regExpUtils.js]
     14 ---*/
     15 
     16 const matchSymbols = buildString({
     17  loneCodePoints: [
     18    0x00002B,
     19    0x00005E,
     20    0x00007C,
     21    0x00007E,
     22    0x0000AC,
     23    0x0000B1,
     24    0x0000D7,
     25    0x0000F7,
     26    0x0003D5,
     27    0x002016,
     28    0x002040,
     29    0x002044,
     30    0x002052,
     31    0x0020E1,
     32    0x002102,
     33    0x002107,
     34    0x002115,
     35    0x002124,
     36    0x00214B,
     37    0x0021DD,
     38    0x00237C,
     39    0x0023B7,
     40    0x0023D0,
     41    0x0025E2,
     42    0x0025E4,
     43    0x002640,
     44    0x002642,
     45    0x00FB29,
     46    0x00FE68,
     47    0x00FF0B,
     48    0x00FF3C,
     49    0x00FF3E,
     50    0x00FF5C,
     51    0x00FF5E,
     52    0x00FFE2,
     53    0x01CEF0,
     54    0x01D4A2,
     55    0x01D4BB,
     56    0x01D546,
     57    0x01EE24,
     58    0x01EE27,
     59    0x01EE39,
     60    0x01EE3B,
     61    0x01EE42,
     62    0x01EE47,
     63    0x01EE49,
     64    0x01EE4B,
     65    0x01EE54,
     66    0x01EE57,
     67    0x01EE59,
     68    0x01EE5B,
     69    0x01EE5D,
     70    0x01EE5F,
     71    0x01EE64,
     72    0x01EE7E
     73  ],
     74  ranges: [
     75    [0x00003C, 0x00003E],
     76    [0x0003D0, 0x0003D2],
     77    [0x0003F0, 0x0003F1],
     78    [0x0003F4, 0x0003F6],
     79    [0x000606, 0x000608],
     80    [0x002032, 0x002034],
     81    [0x002061, 0x002064],
     82    [0x00207A, 0x00207E],
     83    [0x00208A, 0x00208E],
     84    [0x0020D0, 0x0020DC],
     85    [0x0020E5, 0x0020E6],
     86    [0x0020EB, 0x0020EF],
     87    [0x00210A, 0x002113],
     88    [0x002118, 0x00211D],
     89    [0x002128, 0x002129],
     90    [0x00212C, 0x00212D],
     91    [0x00212F, 0x002131],
     92    [0x002133, 0x002138],
     93    [0x00213C, 0x002149],
     94    [0x002190, 0x0021A7],
     95    [0x0021A9, 0x0021AE],
     96    [0x0021B0, 0x0021B1],
     97    [0x0021B6, 0x0021B7],
     98    [0x0021BC, 0x0021DB],
     99    [0x0021E4, 0x0021E5],
    100    [0x0021F4, 0x0022FF],
    101    [0x002308, 0x00230B],
    102    [0x002320, 0x002321],
    103    [0x00239B, 0x0023B5],
    104    [0x0023DC, 0x0023E2],
    105    [0x0025A0, 0x0025A1],
    106    [0x0025AE, 0x0025B7],
    107    [0x0025BC, 0x0025C1],
    108    [0x0025C6, 0x0025C7],
    109    [0x0025CA, 0x0025CB],
    110    [0x0025CF, 0x0025D3],
    111    [0x0025E7, 0x0025EC],
    112    [0x0025F8, 0x0025FF],
    113    [0x002605, 0x002606],
    114    [0x002660, 0x002663],
    115    [0x00266D, 0x00266F],
    116    [0x0027C0, 0x0027FF],
    117    [0x002900, 0x002AFF],
    118    [0x002B30, 0x002B44],
    119    [0x002B47, 0x002B4C],
    120    [0x00FE61, 0x00FE66],
    121    [0x00FF1C, 0x00FF1E],
    122    [0x00FFE9, 0x00FFEC],
    123    [0x010D8E, 0x010D8F],
    124    [0x01D400, 0x01D454],
    125    [0x01D456, 0x01D49C],
    126    [0x01D49E, 0x01D49F],
    127    [0x01D4A5, 0x01D4A6],
    128    [0x01D4A9, 0x01D4AC],
    129    [0x01D4AE, 0x01D4B9],
    130    [0x01D4BD, 0x01D4C3],
    131    [0x01D4C5, 0x01D505],
    132    [0x01D507, 0x01D50A],
    133    [0x01D50D, 0x01D514],
    134    [0x01D516, 0x01D51C],
    135    [0x01D51E, 0x01D539],
    136    [0x01D53B, 0x01D53E],
    137    [0x01D540, 0x01D544],
    138    [0x01D54A, 0x01D550],
    139    [0x01D552, 0x01D6A5],
    140    [0x01D6A8, 0x01D7CB],
    141    [0x01D7CE, 0x01D7FF],
    142    [0x01EE00, 0x01EE03],
    143    [0x01EE05, 0x01EE1F],
    144    [0x01EE21, 0x01EE22],
    145    [0x01EE29, 0x01EE32],
    146    [0x01EE34, 0x01EE37],
    147    [0x01EE4D, 0x01EE4F],
    148    [0x01EE51, 0x01EE52],
    149    [0x01EE61, 0x01EE62],
    150    [0x01EE67, 0x01EE6A],
    151    [0x01EE6C, 0x01EE72],
    152    [0x01EE74, 0x01EE77],
    153    [0x01EE79, 0x01EE7C],
    154    [0x01EE80, 0x01EE89],
    155    [0x01EE8B, 0x01EE9B],
    156    [0x01EEA1, 0x01EEA3],
    157    [0x01EEA5, 0x01EEA9],
    158    [0x01EEAB, 0x01EEBB],
    159    [0x01EEF0, 0x01EEF1],
    160    [0x01F8D0, 0x01F8D8]
    161  ]
    162 });
    163 testPropertyEscapes(
    164  /^\p{Math}+$/u,
    165  matchSymbols,
    166  "\\p{Math}"
    167 );
    168 
    169 const nonMatchSymbols = buildString({
    170  loneCodePoints: [
    171    0x00007D,
    172    0x002114,
    173    0x00212E,
    174    0x002132,
    175    0x00214A,
    176    0x0021A8,
    177    0x0021AF,
    178    0x0021DC,
    179    0x0023B6,
    180    0x0025E3,
    181    0x002641,
    182    0x00FE67,
    183    0x00FF3D,
    184    0x00FF5D,
    185    0x01D455,
    186    0x01D49D,
    187    0x01D4AD,
    188    0x01D4BA,
    189    0x01D4BC,
    190    0x01D4C4,
    191    0x01D506,
    192    0x01D515,
    193    0x01D51D,
    194    0x01D53A,
    195    0x01D53F,
    196    0x01D545,
    197    0x01D551,
    198    0x01EE04,
    199    0x01EE20,
    200    0x01EE23,
    201    0x01EE28,
    202    0x01EE33,
    203    0x01EE38,
    204    0x01EE3A,
    205    0x01EE48,
    206    0x01EE4A,
    207    0x01EE4C,
    208    0x01EE50,
    209    0x01EE53,
    210    0x01EE58,
    211    0x01EE5A,
    212    0x01EE5C,
    213    0x01EE5E,
    214    0x01EE60,
    215    0x01EE63,
    216    0x01EE6B,
    217    0x01EE73,
    218    0x01EE78,
    219    0x01EE7D,
    220    0x01EE7F,
    221    0x01EE8A,
    222    0x01EEA4,
    223    0x01EEAA
    224  ],
    225  ranges: [
    226    [0x00DC00, 0x00DFFF],
    227    [0x000000, 0x00002A],
    228    [0x00002C, 0x00003B],
    229    [0x00003F, 0x00005D],
    230    [0x00005F, 0x00007B],
    231    [0x00007F, 0x0000AB],
    232    [0x0000AD, 0x0000B0],
    233    [0x0000B2, 0x0000D6],
    234    [0x0000D8, 0x0000F6],
    235    [0x0000F8, 0x0003CF],
    236    [0x0003D3, 0x0003D4],
    237    [0x0003D6, 0x0003EF],
    238    [0x0003F2, 0x0003F3],
    239    [0x0003F7, 0x000605],
    240    [0x000609, 0x002015],
    241    [0x002017, 0x002031],
    242    [0x002035, 0x00203F],
    243    [0x002041, 0x002043],
    244    [0x002045, 0x002051],
    245    [0x002053, 0x002060],
    246    [0x002065, 0x002079],
    247    [0x00207F, 0x002089],
    248    [0x00208F, 0x0020CF],
    249    [0x0020DD, 0x0020E0],
    250    [0x0020E2, 0x0020E4],
    251    [0x0020E7, 0x0020EA],
    252    [0x0020F0, 0x002101],
    253    [0x002103, 0x002106],
    254    [0x002108, 0x002109],
    255    [0x002116, 0x002117],
    256    [0x00211E, 0x002123],
    257    [0x002125, 0x002127],
    258    [0x00212A, 0x00212B],
    259    [0x002139, 0x00213B],
    260    [0x00214C, 0x00218F],
    261    [0x0021B2, 0x0021B5],
    262    [0x0021B8, 0x0021BB],
    263    [0x0021DE, 0x0021E3],
    264    [0x0021E6, 0x0021F3],
    265    [0x002300, 0x002307],
    266    [0x00230C, 0x00231F],
    267    [0x002322, 0x00237B],
    268    [0x00237D, 0x00239A],
    269    [0x0023B8, 0x0023CF],
    270    [0x0023D1, 0x0023DB],
    271    [0x0023E3, 0x00259F],
    272    [0x0025A2, 0x0025AD],
    273    [0x0025B8, 0x0025BB],
    274    [0x0025C2, 0x0025C5],
    275    [0x0025C8, 0x0025C9],
    276    [0x0025CC, 0x0025CE],
    277    [0x0025D4, 0x0025E1],
    278    [0x0025E5, 0x0025E6],
    279    [0x0025ED, 0x0025F7],
    280    [0x002600, 0x002604],
    281    [0x002607, 0x00263F],
    282    [0x002643, 0x00265F],
    283    [0x002664, 0x00266C],
    284    [0x002670, 0x0027BF],
    285    [0x002800, 0x0028FF],
    286    [0x002B00, 0x002B2F],
    287    [0x002B45, 0x002B46],
    288    [0x002B4D, 0x00DBFF],
    289    [0x00E000, 0x00FB28],
    290    [0x00FB2A, 0x00FE60],
    291    [0x00FE69, 0x00FF0A],
    292    [0x00FF0C, 0x00FF1B],
    293    [0x00FF1F, 0x00FF3B],
    294    [0x00FF3F, 0x00FF5B],
    295    [0x00FF5F, 0x00FFE1],
    296    [0x00FFE3, 0x00FFE8],
    297    [0x00FFED, 0x010D8D],
    298    [0x010D90, 0x01CEEF],
    299    [0x01CEF1, 0x01D3FF],
    300    [0x01D4A0, 0x01D4A1],
    301    [0x01D4A3, 0x01D4A4],
    302    [0x01D4A7, 0x01D4A8],
    303    [0x01D50B, 0x01D50C],
    304    [0x01D547, 0x01D549],
    305    [0x01D6A6, 0x01D6A7],
    306    [0x01D7CC, 0x01D7CD],
    307    [0x01D800, 0x01EDFF],
    308    [0x01EE25, 0x01EE26],
    309    [0x01EE3C, 0x01EE41],
    310    [0x01EE43, 0x01EE46],
    311    [0x01EE55, 0x01EE56],
    312    [0x01EE65, 0x01EE66],
    313    [0x01EE9C, 0x01EEA0],
    314    [0x01EEBC, 0x01EEEF],
    315    [0x01EEF2, 0x01F8CF],
    316    [0x01F8D9, 0x10FFFF]
    317  ]
    318 });
    319 testPropertyEscapes(
    320  /^\P{Math}+$/u,
    321  nonMatchSymbols,
    322  "\\P{Math}"
    323 );
    324 
    325 reportCompare(0, 0);