tor-browser

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

Sentence_Terminal.js (5173B)


      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 `Sentence_Terminal`
      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    0x000021,
     19    0x00002E,
     20    0x00003F,
     21    0x000589,
     22    0x0006D4,
     23    0x0007F9,
     24    0x000837,
     25    0x000839,
     26    0x001362,
     27    0x00166E,
     28    0x001803,
     29    0x001809,
     30    0x002024,
     31    0x002E2E,
     32    0x002E3C,
     33    0x003002,
     34    0x00A4FF,
     35    0x00A6F3,
     36    0x00A6F7,
     37    0x00A92F,
     38    0x00ABEB,
     39    0x00FE12,
     40    0x00FE52,
     41    0x00FF01,
     42    0x00FF0E,
     43    0x00FF1F,
     44    0x00FF61,
     45    0x0111CD,
     46    0x0112A9,
     47    0x011944,
     48    0x011946,
     49    0x016AF5,
     50    0x016B44,
     51    0x016E98,
     52    0x01BC9F,
     53    0x01DA88
     54  ],
     55  ranges: [
     56    [0x00061D, 0x00061F],
     57    [0x000700, 0x000702],
     58    [0x00083D, 0x00083E],
     59    [0x000964, 0x000965],
     60    [0x00104A, 0x00104B],
     61    [0x001367, 0x001368],
     62    [0x001735, 0x001736],
     63    [0x0017D4, 0x0017D5],
     64    [0x001944, 0x001945],
     65    [0x001AA8, 0x001AAB],
     66    [0x001B4E, 0x001B4F],
     67    [0x001B5A, 0x001B5B],
     68    [0x001B5E, 0x001B5F],
     69    [0x001B7D, 0x001B7F],
     70    [0x001C3B, 0x001C3C],
     71    [0x001C7E, 0x001C7F],
     72    [0x00203C, 0x00203D],
     73    [0x002047, 0x002049],
     74    [0x002CF9, 0x002CFB],
     75    [0x002E53, 0x002E54],
     76    [0x00A60E, 0x00A60F],
     77    [0x00A876, 0x00A877],
     78    [0x00A8CE, 0x00A8CF],
     79    [0x00A9C8, 0x00A9C9],
     80    [0x00AA5D, 0x00AA5F],
     81    [0x00AAF0, 0x00AAF1],
     82    [0x00FE15, 0x00FE16],
     83    [0x00FE56, 0x00FE57],
     84    [0x010A56, 0x010A57],
     85    [0x010F55, 0x010F59],
     86    [0x010F86, 0x010F89],
     87    [0x011047, 0x011048],
     88    [0x0110BE, 0x0110C1],
     89    [0x011141, 0x011143],
     90    [0x0111C5, 0x0111C6],
     91    [0x0111DE, 0x0111DF],
     92    [0x011238, 0x011239],
     93    [0x01123B, 0x01123C],
     94    [0x0113D4, 0x0113D5],
     95    [0x01144B, 0x01144C],
     96    [0x0115C2, 0x0115C3],
     97    [0x0115C9, 0x0115D7],
     98    [0x011641, 0x011642],
     99    [0x01173C, 0x01173E],
    100    [0x011A42, 0x011A43],
    101    [0x011A9B, 0x011A9C],
    102    [0x011C41, 0x011C42],
    103    [0x011EF7, 0x011EF8],
    104    [0x011F43, 0x011F44],
    105    [0x016A6E, 0x016A6F],
    106    [0x016B37, 0x016B38],
    107    [0x016D6E, 0x016D6F]
    108  ]
    109 });
    110 testPropertyEscapes(
    111  /^\p{Sentence_Terminal}+$/u,
    112  matchSymbols,
    113  "\\p{Sentence_Terminal}"
    114 );
    115 testPropertyEscapes(
    116  /^\p{STerm}+$/u,
    117  matchSymbols,
    118  "\\p{STerm}"
    119 );
    120 
    121 const nonMatchSymbols = buildString({
    122  loneCodePoints: [
    123    0x000838,
    124    0x01123A,
    125    0x011945
    126  ],
    127  ranges: [
    128    [0x00DC00, 0x00DFFF],
    129    [0x000000, 0x000020],
    130    [0x000022, 0x00002D],
    131    [0x00002F, 0x00003E],
    132    [0x000040, 0x000588],
    133    [0x00058A, 0x00061C],
    134    [0x000620, 0x0006D3],
    135    [0x0006D5, 0x0006FF],
    136    [0x000703, 0x0007F8],
    137    [0x0007FA, 0x000836],
    138    [0x00083A, 0x00083C],
    139    [0x00083F, 0x000963],
    140    [0x000966, 0x001049],
    141    [0x00104C, 0x001361],
    142    [0x001363, 0x001366],
    143    [0x001369, 0x00166D],
    144    [0x00166F, 0x001734],
    145    [0x001737, 0x0017D3],
    146    [0x0017D6, 0x001802],
    147    [0x001804, 0x001808],
    148    [0x00180A, 0x001943],
    149    [0x001946, 0x001AA7],
    150    [0x001AAC, 0x001B4D],
    151    [0x001B50, 0x001B59],
    152    [0x001B5C, 0x001B5D],
    153    [0x001B60, 0x001B7C],
    154    [0x001B80, 0x001C3A],
    155    [0x001C3D, 0x001C7D],
    156    [0x001C80, 0x002023],
    157    [0x002025, 0x00203B],
    158    [0x00203E, 0x002046],
    159    [0x00204A, 0x002CF8],
    160    [0x002CFC, 0x002E2D],
    161    [0x002E2F, 0x002E3B],
    162    [0x002E3D, 0x002E52],
    163    [0x002E55, 0x003001],
    164    [0x003003, 0x00A4FE],
    165    [0x00A500, 0x00A60D],
    166    [0x00A610, 0x00A6F2],
    167    [0x00A6F4, 0x00A6F6],
    168    [0x00A6F8, 0x00A875],
    169    [0x00A878, 0x00A8CD],
    170    [0x00A8D0, 0x00A92E],
    171    [0x00A930, 0x00A9C7],
    172    [0x00A9CA, 0x00AA5C],
    173    [0x00AA60, 0x00AAEF],
    174    [0x00AAF2, 0x00ABEA],
    175    [0x00ABEC, 0x00DBFF],
    176    [0x00E000, 0x00FE11],
    177    [0x00FE13, 0x00FE14],
    178    [0x00FE17, 0x00FE51],
    179    [0x00FE53, 0x00FE55],
    180    [0x00FE58, 0x00FF00],
    181    [0x00FF02, 0x00FF0D],
    182    [0x00FF0F, 0x00FF1E],
    183    [0x00FF20, 0x00FF60],
    184    [0x00FF62, 0x010A55],
    185    [0x010A58, 0x010F54],
    186    [0x010F5A, 0x010F85],
    187    [0x010F8A, 0x011046],
    188    [0x011049, 0x0110BD],
    189    [0x0110C2, 0x011140],
    190    [0x011144, 0x0111C4],
    191    [0x0111C7, 0x0111CC],
    192    [0x0111CE, 0x0111DD],
    193    [0x0111E0, 0x011237],
    194    [0x01123D, 0x0112A8],
    195    [0x0112AA, 0x0113D3],
    196    [0x0113D6, 0x01144A],
    197    [0x01144D, 0x0115C1],
    198    [0x0115C4, 0x0115C8],
    199    [0x0115D8, 0x011640],
    200    [0x011643, 0x01173B],
    201    [0x01173F, 0x011943],
    202    [0x011947, 0x011A41],
    203    [0x011A44, 0x011A9A],
    204    [0x011A9D, 0x011C40],
    205    [0x011C43, 0x011EF6],
    206    [0x011EF9, 0x011F42],
    207    [0x011F45, 0x016A6D],
    208    [0x016A70, 0x016AF4],
    209    [0x016AF6, 0x016B36],
    210    [0x016B39, 0x016B43],
    211    [0x016B45, 0x016D6D],
    212    [0x016D70, 0x016E97],
    213    [0x016E99, 0x01BC9E],
    214    [0x01BCA0, 0x01DA87],
    215    [0x01DA89, 0x10FFFF]
    216  ]
    217 });
    218 testPropertyEscapes(
    219  /^\P{Sentence_Terminal}+$/u,
    220  nonMatchSymbols,
    221  "\\P{Sentence_Terminal}"
    222 );
    223 testPropertyEscapes(
    224  /^\P{STerm}+$/u,
    225  nonMatchSymbols,
    226  "\\P{STerm}"
    227 );
    228 
    229 reportCompare(0, 0);