tor-browser

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

u-surrogate-pairs-atom-char-class.js (1063B)


      1 // Copyright (C) 2016 the V8 project authors. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 /*---
      4 esid: sec-atom
      5 es6id: 21.2.2.8
      6 description: >
      7  Support for surrogate pairs within patterns match by the CharacterClass Atom
      8 info: |
      9  The production Atom :: CharacterClass evaluates as follows:
     10 
     11  1. Evaluate CharacterClass to obtain a CharSet A and a Boolean invert.
     12  2. Call CharacterSetMatcher(A, invert) and return its Matcher result. 
     13 
     14  Runtime Semantics: CharacterSetMatcher Abstract Operation
     15 
     16  1. Return an internal Matcher closure that takes two arguments, a State x and
     17     a Continuation c, and performs the following steps when evaluated:
     18     [...]
     19     d. Let cc be Canonicalize(ch).
     20     [...]
     21 ---*/
     22 
     23 assert(/^[\ud800\udc00]$/u.test('\ud800\udc00'));
     24 assert.sameValue(
     25  /[\ud800\udc00]/u.test('\ud800'),
     26  false,
     27  '\\ud800 does not qualify as a class member'
     28 );
     29 assert.sameValue(
     30  /[\ud800\udc00]/u.test('\udc00'),
     31  false,
     32  '\\udc00 does not qualify as a class member'
     33 );
     34 
     35 reportCompare(0, 0);