mirror of https://github.com/tc39/test262.git
Add tests for \p{…} with properties of strings
This functionality is part of the RegExp `v` flag proposal: https://github.com/tc39/proposal-regexp-set-notation
This commit is contained in:
parent
7bfda9f10b
commit
489a9f8d52
|
@ -264,6 +264,10 @@ array-find-from-last
|
||||||
# https://github.com/tc39/proposal-intl-duration-format
|
# https://github.com/tc39/proposal-intl-duration-format
|
||||||
Intl.DurationFormat
|
Intl.DurationFormat
|
||||||
|
|
||||||
|
# RegExp set notation + properties of strings
|
||||||
|
# https://github.com/tc39/proposal-regexp-set-notation
|
||||||
|
regexp-v-flag
|
||||||
|
|
||||||
## Standard language features
|
## Standard language features
|
||||||
#
|
#
|
||||||
# Language features that have been included in a published version of the
|
# Language features that have been included in a published version of the
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
/*---
|
/*---
|
||||||
description: |
|
description: |
|
||||||
Collection of functions used to assert the correctness of RegExp objects.
|
Collection of functions used to assert the correctness of RegExp objects.
|
||||||
defines: [buildString, testPropertyEscapes, matchValidator]
|
defines: [buildString, testPropertyEscapes, testPropertyOfStrings, matchValidator]
|
||||||
---*/
|
---*/
|
||||||
|
|
||||||
function buildString(args) {
|
function buildString(args) {
|
||||||
|
@ -31,23 +31,65 @@ function buildString(args) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
function testPropertyEscapes(regex, string, expression) {
|
function printCodePoint(codePoint) {
|
||||||
if (!regex.test(string)) {
|
const hex = codePoint
|
||||||
|
.toString(16)
|
||||||
|
.toUpperCase()
|
||||||
|
.padStart(6, "0");
|
||||||
|
return `U+${hex}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
function printStringCodePoints(string) {
|
||||||
|
const buf = [];
|
||||||
|
for (const symbol of string) {
|
||||||
|
const formatted = printCodePoint(symbol.codePointAt(0));
|
||||||
|
buf.push(formatted);
|
||||||
|
}
|
||||||
|
return buf.join(' ');
|
||||||
|
}
|
||||||
|
|
||||||
|
function testPropertyEscapes(regExp, string, expression) {
|
||||||
|
if (!regExp.test(string)) {
|
||||||
for (const symbol of string) {
|
for (const symbol of string) {
|
||||||
const hex = symbol
|
printCodePoint(symbol.codePointAt(0));
|
||||||
.codePointAt(0)
|
|
||||||
.toString(16)
|
|
||||||
.toUpperCase()
|
|
||||||
.padStart(6, "0");
|
|
||||||
assert(
|
assert(
|
||||||
regex.test(symbol),
|
regExp.test(symbol),
|
||||||
`\`${ expression }\` should match U+${ hex } (\`${ symbol }\`)`
|
`\`${ expression }\` should match U+${ hex } (\`${ symbol }\`)`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns a function that will validate RegExp match result
|
function testPropertyOfStrings(args) {
|
||||||
|
// Use member expressions rather than destructuring `args` for improved
|
||||||
|
// compatibility with engines that only implement assignment patterns
|
||||||
|
// partially or not at all.
|
||||||
|
const regExp = args.regExp;
|
||||||
|
const expression = args.expression;
|
||||||
|
const matchStrings = args.matchStrings;
|
||||||
|
const nonMatchStrings = args.nonMatchStrings;
|
||||||
|
const allStrings = matchStrings.join('');
|
||||||
|
if (!regExp.test(allStrings)) {
|
||||||
|
for (const string of matchStrings) {
|
||||||
|
assert(
|
||||||
|
regExp.test(string),
|
||||||
|
`\`${ expression }\` should match ${ string } (U+${ printStringCodePoints(string) })`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const allNonMatchStrings = nonMatchStrings.join('');
|
||||||
|
if (regExp.test(allNonMatchStrings)) {
|
||||||
|
for (const string of nonMatchStrings) {
|
||||||
|
assert(
|
||||||
|
!regExp.test(string),
|
||||||
|
`\`${ expression }\` should not match ${ string } (U+${ printStringCodePoints(string) })`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns a function that validates a RegExp match result.
|
||||||
//
|
//
|
||||||
// Example:
|
// Example:
|
||||||
//
|
//
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Basic_Emoji` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{Basic_Emoji}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Basic_Emoji` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{Basic_Emoji}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `Basic_Emoji` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{Basic_Emoji}/u;
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Emoji_Keycap_Sequence` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{Emoji_Keycap_Sequence}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Emoji_Keycap_Sequence` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{Emoji_Keycap_Sequence}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `Emoji_Keycap_Sequence` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{Emoji_Keycap_Sequence}/u;
|
|
@ -0,0 +1,50 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `Emoji_Keycap_Sequence` (property of strings)
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-static-semantics-unicodematchproperty-p
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
includes: [regExpUtils.js]
|
||||||
|
---*/
|
||||||
|
|
||||||
|
testPropertyOfStrings({
|
||||||
|
regExp: /^\p{Emoji_Keycap_Sequence}+$/v,
|
||||||
|
expression: "\\p{Emoji_Keycap_Sequence}",
|
||||||
|
matchStrings: [
|
||||||
|
"#\uFE0F\u20E3",
|
||||||
|
"*\uFE0F\u20E3",
|
||||||
|
"0\uFE0F\u20E3",
|
||||||
|
"1\uFE0F\u20E3",
|
||||||
|
"2\uFE0F\u20E3",
|
||||||
|
"3\uFE0F\u20E3",
|
||||||
|
"4\uFE0F\u20E3",
|
||||||
|
"5\uFE0F\u20E3",
|
||||||
|
"6\uFE0F\u20E3",
|
||||||
|
"7\uFE0F\u20E3",
|
||||||
|
"8\uFE0F\u20E3",
|
||||||
|
"9\uFE0F\u20E3"
|
||||||
|
],
|
||||||
|
nonMatchStrings: [
|
||||||
|
"\uFE0F\u20E3",
|
||||||
|
"#\uFE0F",
|
||||||
|
"#\u20E3",
|
||||||
|
"\uFE0F\u20E3",
|
||||||
|
"*\uFE0F",
|
||||||
|
"*\u20E3",
|
||||||
|
"\uFE0F\u20E3",
|
||||||
|
"0\uFE0F",
|
||||||
|
"0\u20E3",
|
||||||
|
"\uFE0F\u20E3",
|
||||||
|
"1\uFE0F",
|
||||||
|
"1\u20E3",
|
||||||
|
"\uFE0F\u20E3",
|
||||||
|
"2\uFE0F",
|
||||||
|
"2\u20E3"
|
||||||
|
],
|
||||||
|
});
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Emoji_Test` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{Emoji_Test}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `Emoji_Test` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{Emoji_Test}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `Emoji_Test` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{Emoji_Test}/u;
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{RGI_Emoji}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{RGI_Emoji}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{RGI_Emoji}/u;
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Flag_Sequence` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{RGI_Emoji_Flag_Sequence}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Flag_Sequence` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{RGI_Emoji_Flag_Sequence}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Flag_Sequence` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{RGI_Emoji_Flag_Sequence}/u;
|
|
@ -0,0 +1,291 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Flag_Sequence` (property of strings)
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-static-semantics-unicodematchproperty-p
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
includes: [regExpUtils.js]
|
||||||
|
---*/
|
||||||
|
|
||||||
|
testPropertyOfStrings({
|
||||||
|
regExp: /^\p{RGI_Emoji_Flag_Sequence}+$/v,
|
||||||
|
expression: "\\p{RGI_Emoji_Flag_Sequence}",
|
||||||
|
matchStrings: [
|
||||||
|
"\u{1F1E6}\u{1F1E8}",
|
||||||
|
"\u{1F1E6}\u{1F1E9}",
|
||||||
|
"\u{1F1E6}\u{1F1EA}",
|
||||||
|
"\u{1F1E6}\u{1F1EB}",
|
||||||
|
"\u{1F1E6}\u{1F1EC}",
|
||||||
|
"\u{1F1E6}\u{1F1EE}",
|
||||||
|
"\u{1F1E6}\u{1F1F1}",
|
||||||
|
"\u{1F1E6}\u{1F1F2}",
|
||||||
|
"\u{1F1E6}\u{1F1F4}",
|
||||||
|
"\u{1F1E6}\u{1F1F6}",
|
||||||
|
"\u{1F1E6}\u{1F1F7}",
|
||||||
|
"\u{1F1E6}\u{1F1F8}",
|
||||||
|
"\u{1F1E6}\u{1F1F9}",
|
||||||
|
"\u{1F1E6}\u{1F1FA}",
|
||||||
|
"\u{1F1E6}\u{1F1FC}",
|
||||||
|
"\u{1F1E6}\u{1F1FD}",
|
||||||
|
"\u{1F1E6}\u{1F1FF}",
|
||||||
|
"\u{1F1E7}\u{1F1E6}",
|
||||||
|
"\u{1F1E7}\u{1F1E7}",
|
||||||
|
"\u{1F1E7}\u{1F1E9}",
|
||||||
|
"\u{1F1E7}\u{1F1EA}",
|
||||||
|
"\u{1F1E7}\u{1F1EB}",
|
||||||
|
"\u{1F1E7}\u{1F1EC}",
|
||||||
|
"\u{1F1E7}\u{1F1ED}",
|
||||||
|
"\u{1F1E7}\u{1F1EE}",
|
||||||
|
"\u{1F1E7}\u{1F1EF}",
|
||||||
|
"\u{1F1E7}\u{1F1F1}",
|
||||||
|
"\u{1F1E7}\u{1F1F2}",
|
||||||
|
"\u{1F1E7}\u{1F1F3}",
|
||||||
|
"\u{1F1E7}\u{1F1F4}",
|
||||||
|
"\u{1F1E7}\u{1F1F6}",
|
||||||
|
"\u{1F1E7}\u{1F1F7}",
|
||||||
|
"\u{1F1E7}\u{1F1F8}",
|
||||||
|
"\u{1F1E7}\u{1F1F9}",
|
||||||
|
"\u{1F1E7}\u{1F1FB}",
|
||||||
|
"\u{1F1E7}\u{1F1FC}",
|
||||||
|
"\u{1F1E7}\u{1F1FE}",
|
||||||
|
"\u{1F1E7}\u{1F1FF}",
|
||||||
|
"\u{1F1E8}\u{1F1E6}",
|
||||||
|
"\u{1F1E8}\u{1F1E8}",
|
||||||
|
"\u{1F1E8}\u{1F1E9}",
|
||||||
|
"\u{1F1E8}\u{1F1EB}",
|
||||||
|
"\u{1F1E8}\u{1F1EC}",
|
||||||
|
"\u{1F1E8}\u{1F1ED}",
|
||||||
|
"\u{1F1E8}\u{1F1EE}",
|
||||||
|
"\u{1F1E8}\u{1F1F0}",
|
||||||
|
"\u{1F1E8}\u{1F1F1}",
|
||||||
|
"\u{1F1E8}\u{1F1F2}",
|
||||||
|
"\u{1F1E8}\u{1F1F3}",
|
||||||
|
"\u{1F1E8}\u{1F1F4}",
|
||||||
|
"\u{1F1E8}\u{1F1F5}",
|
||||||
|
"\u{1F1E8}\u{1F1F7}",
|
||||||
|
"\u{1F1E8}\u{1F1FA}",
|
||||||
|
"\u{1F1E8}\u{1F1FB}",
|
||||||
|
"\u{1F1E8}\u{1F1FC}",
|
||||||
|
"\u{1F1E8}\u{1F1FD}",
|
||||||
|
"\u{1F1E8}\u{1F1FE}",
|
||||||
|
"\u{1F1E8}\u{1F1FF}",
|
||||||
|
"\u{1F1E9}\u{1F1EA}",
|
||||||
|
"\u{1F1E9}\u{1F1EC}",
|
||||||
|
"\u{1F1E9}\u{1F1EF}",
|
||||||
|
"\u{1F1E9}\u{1F1F0}",
|
||||||
|
"\u{1F1E9}\u{1F1F2}",
|
||||||
|
"\u{1F1E9}\u{1F1F4}",
|
||||||
|
"\u{1F1E9}\u{1F1FF}",
|
||||||
|
"\u{1F1EA}\u{1F1E6}",
|
||||||
|
"\u{1F1EA}\u{1F1E8}",
|
||||||
|
"\u{1F1EA}\u{1F1EA}",
|
||||||
|
"\u{1F1EA}\u{1F1EC}",
|
||||||
|
"\u{1F1EA}\u{1F1ED}",
|
||||||
|
"\u{1F1EA}\u{1F1F7}",
|
||||||
|
"\u{1F1EA}\u{1F1F8}",
|
||||||
|
"\u{1F1EA}\u{1F1F9}",
|
||||||
|
"\u{1F1EA}\u{1F1FA}",
|
||||||
|
"\u{1F1EB}\u{1F1EE}",
|
||||||
|
"\u{1F1EB}\u{1F1EF}",
|
||||||
|
"\u{1F1EB}\u{1F1F0}",
|
||||||
|
"\u{1F1EB}\u{1F1F2}",
|
||||||
|
"\u{1F1EB}\u{1F1F4}",
|
||||||
|
"\u{1F1EB}\u{1F1F7}",
|
||||||
|
"\u{1F1EC}\u{1F1E6}",
|
||||||
|
"\u{1F1EC}\u{1F1E7}",
|
||||||
|
"\u{1F1EC}\u{1F1E9}",
|
||||||
|
"\u{1F1EC}\u{1F1EA}",
|
||||||
|
"\u{1F1EC}\u{1F1EB}",
|
||||||
|
"\u{1F1EC}\u{1F1EC}",
|
||||||
|
"\u{1F1EC}\u{1F1ED}",
|
||||||
|
"\u{1F1EC}\u{1F1EE}",
|
||||||
|
"\u{1F1EC}\u{1F1F1}",
|
||||||
|
"\u{1F1EC}\u{1F1F2}",
|
||||||
|
"\u{1F1EC}\u{1F1F3}",
|
||||||
|
"\u{1F1EC}\u{1F1F5}",
|
||||||
|
"\u{1F1EC}\u{1F1F6}",
|
||||||
|
"\u{1F1EC}\u{1F1F7}",
|
||||||
|
"\u{1F1EC}\u{1F1F8}",
|
||||||
|
"\u{1F1EC}\u{1F1F9}",
|
||||||
|
"\u{1F1EC}\u{1F1FA}",
|
||||||
|
"\u{1F1EC}\u{1F1FC}",
|
||||||
|
"\u{1F1EC}\u{1F1FE}",
|
||||||
|
"\u{1F1ED}\u{1F1F0}",
|
||||||
|
"\u{1F1ED}\u{1F1F2}",
|
||||||
|
"\u{1F1ED}\u{1F1F3}",
|
||||||
|
"\u{1F1ED}\u{1F1F7}",
|
||||||
|
"\u{1F1ED}\u{1F1F9}",
|
||||||
|
"\u{1F1ED}\u{1F1FA}",
|
||||||
|
"\u{1F1EE}\u{1F1E8}",
|
||||||
|
"\u{1F1EE}\u{1F1E9}",
|
||||||
|
"\u{1F1EE}\u{1F1EA}",
|
||||||
|
"\u{1F1EE}\u{1F1F1}",
|
||||||
|
"\u{1F1EE}\u{1F1F2}",
|
||||||
|
"\u{1F1EE}\u{1F1F3}",
|
||||||
|
"\u{1F1EE}\u{1F1F4}",
|
||||||
|
"\u{1F1EE}\u{1F1F6}",
|
||||||
|
"\u{1F1EE}\u{1F1F7}",
|
||||||
|
"\u{1F1EE}\u{1F1F8}",
|
||||||
|
"\u{1F1EE}\u{1F1F9}",
|
||||||
|
"\u{1F1EF}\u{1F1EA}",
|
||||||
|
"\u{1F1EF}\u{1F1F2}",
|
||||||
|
"\u{1F1EF}\u{1F1F4}",
|
||||||
|
"\u{1F1EF}\u{1F1F5}",
|
||||||
|
"\u{1F1F0}\u{1F1EA}",
|
||||||
|
"\u{1F1F0}\u{1F1EC}",
|
||||||
|
"\u{1F1F0}\u{1F1ED}",
|
||||||
|
"\u{1F1F0}\u{1F1EE}",
|
||||||
|
"\u{1F1F0}\u{1F1F2}",
|
||||||
|
"\u{1F1F0}\u{1F1F3}",
|
||||||
|
"\u{1F1F0}\u{1F1F5}",
|
||||||
|
"\u{1F1F0}\u{1F1F7}",
|
||||||
|
"\u{1F1F0}\u{1F1FC}",
|
||||||
|
"\u{1F1F0}\u{1F1FE}",
|
||||||
|
"\u{1F1F0}\u{1F1FF}",
|
||||||
|
"\u{1F1F1}\u{1F1E6}",
|
||||||
|
"\u{1F1F1}\u{1F1E7}",
|
||||||
|
"\u{1F1F1}\u{1F1E8}",
|
||||||
|
"\u{1F1F1}\u{1F1EE}",
|
||||||
|
"\u{1F1F1}\u{1F1F0}",
|
||||||
|
"\u{1F1F1}\u{1F1F7}",
|
||||||
|
"\u{1F1F1}\u{1F1F8}",
|
||||||
|
"\u{1F1F1}\u{1F1F9}",
|
||||||
|
"\u{1F1F1}\u{1F1FA}",
|
||||||
|
"\u{1F1F1}\u{1F1FB}",
|
||||||
|
"\u{1F1F1}\u{1F1FE}",
|
||||||
|
"\u{1F1F2}\u{1F1E6}",
|
||||||
|
"\u{1F1F2}\u{1F1E8}",
|
||||||
|
"\u{1F1F2}\u{1F1E9}",
|
||||||
|
"\u{1F1F2}\u{1F1EA}",
|
||||||
|
"\u{1F1F2}\u{1F1EB}",
|
||||||
|
"\u{1F1F2}\u{1F1EC}",
|
||||||
|
"\u{1F1F2}\u{1F1ED}",
|
||||||
|
"\u{1F1F2}\u{1F1F0}",
|
||||||
|
"\u{1F1F2}\u{1F1F1}",
|
||||||
|
"\u{1F1F2}\u{1F1F2}",
|
||||||
|
"\u{1F1F2}\u{1F1F3}",
|
||||||
|
"\u{1F1F2}\u{1F1F4}",
|
||||||
|
"\u{1F1F2}\u{1F1F5}",
|
||||||
|
"\u{1F1F2}\u{1F1F6}",
|
||||||
|
"\u{1F1F2}\u{1F1F7}",
|
||||||
|
"\u{1F1F2}\u{1F1F8}",
|
||||||
|
"\u{1F1F2}\u{1F1F9}",
|
||||||
|
"\u{1F1F2}\u{1F1FA}",
|
||||||
|
"\u{1F1F2}\u{1F1FB}",
|
||||||
|
"\u{1F1F2}\u{1F1FC}",
|
||||||
|
"\u{1F1F2}\u{1F1FD}",
|
||||||
|
"\u{1F1F2}\u{1F1FE}",
|
||||||
|
"\u{1F1F2}\u{1F1FF}",
|
||||||
|
"\u{1F1F3}\u{1F1E6}",
|
||||||
|
"\u{1F1F3}\u{1F1E8}",
|
||||||
|
"\u{1F1F3}\u{1F1EA}",
|
||||||
|
"\u{1F1F3}\u{1F1EB}",
|
||||||
|
"\u{1F1F3}\u{1F1EC}",
|
||||||
|
"\u{1F1F3}\u{1F1EE}",
|
||||||
|
"\u{1F1F3}\u{1F1F1}",
|
||||||
|
"\u{1F1F3}\u{1F1F4}",
|
||||||
|
"\u{1F1F3}\u{1F1F5}",
|
||||||
|
"\u{1F1F3}\u{1F1F7}",
|
||||||
|
"\u{1F1F3}\u{1F1FA}",
|
||||||
|
"\u{1F1F3}\u{1F1FF}",
|
||||||
|
"\u{1F1F4}\u{1F1F2}",
|
||||||
|
"\u{1F1F5}\u{1F1E6}",
|
||||||
|
"\u{1F1F5}\u{1F1EA}",
|
||||||
|
"\u{1F1F5}\u{1F1EB}",
|
||||||
|
"\u{1F1F5}\u{1F1EC}",
|
||||||
|
"\u{1F1F5}\u{1F1ED}",
|
||||||
|
"\u{1F1F5}\u{1F1F0}",
|
||||||
|
"\u{1F1F5}\u{1F1F1}",
|
||||||
|
"\u{1F1F5}\u{1F1F2}",
|
||||||
|
"\u{1F1F5}\u{1F1F3}",
|
||||||
|
"\u{1F1F5}\u{1F1F7}",
|
||||||
|
"\u{1F1F5}\u{1F1F8}",
|
||||||
|
"\u{1F1F5}\u{1F1F9}",
|
||||||
|
"\u{1F1F5}\u{1F1FC}",
|
||||||
|
"\u{1F1F5}\u{1F1FE}",
|
||||||
|
"\u{1F1F6}\u{1F1E6}",
|
||||||
|
"\u{1F1F7}\u{1F1EA}",
|
||||||
|
"\u{1F1F7}\u{1F1F4}",
|
||||||
|
"\u{1F1F7}\u{1F1F8}",
|
||||||
|
"\u{1F1F7}\u{1F1FA}",
|
||||||
|
"\u{1F1F7}\u{1F1FC}",
|
||||||
|
"\u{1F1F8}\u{1F1E6}",
|
||||||
|
"\u{1F1F8}\u{1F1E7}",
|
||||||
|
"\u{1F1F8}\u{1F1E8}",
|
||||||
|
"\u{1F1F8}\u{1F1E9}",
|
||||||
|
"\u{1F1F8}\u{1F1EA}",
|
||||||
|
"\u{1F1F8}\u{1F1EC}",
|
||||||
|
"\u{1F1F8}\u{1F1ED}",
|
||||||
|
"\u{1F1F8}\u{1F1EE}",
|
||||||
|
"\u{1F1F8}\u{1F1EF}",
|
||||||
|
"\u{1F1F8}\u{1F1F0}",
|
||||||
|
"\u{1F1F8}\u{1F1F1}",
|
||||||
|
"\u{1F1F8}\u{1F1F2}",
|
||||||
|
"\u{1F1F8}\u{1F1F3}",
|
||||||
|
"\u{1F1F8}\u{1F1F4}",
|
||||||
|
"\u{1F1F8}\u{1F1F7}",
|
||||||
|
"\u{1F1F8}\u{1F1F8}",
|
||||||
|
"\u{1F1F8}\u{1F1F9}",
|
||||||
|
"\u{1F1F8}\u{1F1FB}",
|
||||||
|
"\u{1F1F8}\u{1F1FD}",
|
||||||
|
"\u{1F1F8}\u{1F1FE}",
|
||||||
|
"\u{1F1F8}\u{1F1FF}",
|
||||||
|
"\u{1F1F9}\u{1F1E6}",
|
||||||
|
"\u{1F1F9}\u{1F1E8}",
|
||||||
|
"\u{1F1F9}\u{1F1E9}",
|
||||||
|
"\u{1F1F9}\u{1F1EB}",
|
||||||
|
"\u{1F1F9}\u{1F1EC}",
|
||||||
|
"\u{1F1F9}\u{1F1ED}",
|
||||||
|
"\u{1F1F9}\u{1F1EF}",
|
||||||
|
"\u{1F1F9}\u{1F1F0}",
|
||||||
|
"\u{1F1F9}\u{1F1F1}",
|
||||||
|
"\u{1F1F9}\u{1F1F2}",
|
||||||
|
"\u{1F1F9}\u{1F1F3}",
|
||||||
|
"\u{1F1F9}\u{1F1F4}",
|
||||||
|
"\u{1F1F9}\u{1F1F7}",
|
||||||
|
"\u{1F1F9}\u{1F1F9}",
|
||||||
|
"\u{1F1F9}\u{1F1FB}",
|
||||||
|
"\u{1F1F9}\u{1F1FC}",
|
||||||
|
"\u{1F1F9}\u{1F1FF}",
|
||||||
|
"\u{1F1FA}\u{1F1E6}",
|
||||||
|
"\u{1F1FA}\u{1F1EC}",
|
||||||
|
"\u{1F1FA}\u{1F1F2}",
|
||||||
|
"\u{1F1FA}\u{1F1F3}",
|
||||||
|
"\u{1F1FA}\u{1F1F8}",
|
||||||
|
"\u{1F1FA}\u{1F1FE}",
|
||||||
|
"\u{1F1FA}\u{1F1FF}",
|
||||||
|
"\u{1F1FB}\u{1F1E6}",
|
||||||
|
"\u{1F1FB}\u{1F1E8}",
|
||||||
|
"\u{1F1FB}\u{1F1EA}",
|
||||||
|
"\u{1F1FB}\u{1F1EC}",
|
||||||
|
"\u{1F1FB}\u{1F1EE}",
|
||||||
|
"\u{1F1FB}\u{1F1F3}",
|
||||||
|
"\u{1F1FB}\u{1F1FA}",
|
||||||
|
"\u{1F1FC}\u{1F1EB}",
|
||||||
|
"\u{1F1FC}\u{1F1F8}",
|
||||||
|
"\u{1F1FD}\u{1F1F0}",
|
||||||
|
"\u{1F1FE}\u{1F1EA}",
|
||||||
|
"\u{1F1FE}\u{1F1F9}",
|
||||||
|
"\u{1F1FF}\u{1F1E6}",
|
||||||
|
"\u{1F1FF}\u{1F1F2}",
|
||||||
|
"\u{1F1FF}\u{1F1FC}"
|
||||||
|
],
|
||||||
|
nonMatchStrings: [
|
||||||
|
"\u{1F1E8}",
|
||||||
|
"\u{1F1E6}",
|
||||||
|
"\u{1F1E9}",
|
||||||
|
"\u{1F1E6}",
|
||||||
|
"\u{1F1EA}",
|
||||||
|
"\u{1F1E6}",
|
||||||
|
"\u{1F1EB}",
|
||||||
|
"\u{1F1E6}",
|
||||||
|
"\u{1F1EC}",
|
||||||
|
"\u{1F1E6}"
|
||||||
|
],
|
||||||
|
});
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Modifier_Sequence` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{RGI_Emoji_Modifier_Sequence}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Modifier_Sequence` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{RGI_Emoji_Modifier_Sequence}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Modifier_Sequence` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{RGI_Emoji_Modifier_Sequence}/u;
|
|
@ -0,0 +1,678 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Modifier_Sequence` (property of strings)
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-static-semantics-unicodematchproperty-p
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
includes: [regExpUtils.js]
|
||||||
|
---*/
|
||||||
|
|
||||||
|
testPropertyOfStrings({
|
||||||
|
regExp: /^\p{RGI_Emoji_Modifier_Sequence}+$/v,
|
||||||
|
expression: "\\p{RGI_Emoji_Modifier_Sequence}",
|
||||||
|
matchStrings: [
|
||||||
|
"\u261D\u{1F3FB}",
|
||||||
|
"\u261D\u{1F3FC}",
|
||||||
|
"\u261D\u{1F3FD}",
|
||||||
|
"\u261D\u{1F3FE}",
|
||||||
|
"\u261D\u{1F3FF}",
|
||||||
|
"\u26F9\u{1F3FB}",
|
||||||
|
"\u26F9\u{1F3FC}",
|
||||||
|
"\u26F9\u{1F3FD}",
|
||||||
|
"\u26F9\u{1F3FE}",
|
||||||
|
"\u26F9\u{1F3FF}",
|
||||||
|
"\u270A\u{1F3FB}",
|
||||||
|
"\u270A\u{1F3FC}",
|
||||||
|
"\u270A\u{1F3FD}",
|
||||||
|
"\u270A\u{1F3FE}",
|
||||||
|
"\u270A\u{1F3FF}",
|
||||||
|
"\u270B\u{1F3FB}",
|
||||||
|
"\u270B\u{1F3FC}",
|
||||||
|
"\u270B\u{1F3FD}",
|
||||||
|
"\u270B\u{1F3FE}",
|
||||||
|
"\u270B\u{1F3FF}",
|
||||||
|
"\u270C\u{1F3FB}",
|
||||||
|
"\u270C\u{1F3FC}",
|
||||||
|
"\u270C\u{1F3FD}",
|
||||||
|
"\u270C\u{1F3FE}",
|
||||||
|
"\u270C\u{1F3FF}",
|
||||||
|
"\u270D\u{1F3FB}",
|
||||||
|
"\u270D\u{1F3FC}",
|
||||||
|
"\u270D\u{1F3FD}",
|
||||||
|
"\u270D\u{1F3FE}",
|
||||||
|
"\u270D\u{1F3FF}",
|
||||||
|
"\u{1F385}\u{1F3FB}",
|
||||||
|
"\u{1F385}\u{1F3FC}",
|
||||||
|
"\u{1F385}\u{1F3FD}",
|
||||||
|
"\u{1F385}\u{1F3FE}",
|
||||||
|
"\u{1F385}\u{1F3FF}",
|
||||||
|
"\u{1F3C2}\u{1F3FB}",
|
||||||
|
"\u{1F3C2}\u{1F3FC}",
|
||||||
|
"\u{1F3C2}\u{1F3FD}",
|
||||||
|
"\u{1F3C2}\u{1F3FE}",
|
||||||
|
"\u{1F3C2}\u{1F3FF}",
|
||||||
|
"\u{1F3C3}\u{1F3FB}",
|
||||||
|
"\u{1F3C3}\u{1F3FC}",
|
||||||
|
"\u{1F3C3}\u{1F3FD}",
|
||||||
|
"\u{1F3C3}\u{1F3FE}",
|
||||||
|
"\u{1F3C3}\u{1F3FF}",
|
||||||
|
"\u{1F3C4}\u{1F3FB}",
|
||||||
|
"\u{1F3C4}\u{1F3FC}",
|
||||||
|
"\u{1F3C4}\u{1F3FD}",
|
||||||
|
"\u{1F3C4}\u{1F3FE}",
|
||||||
|
"\u{1F3C4}\u{1F3FF}",
|
||||||
|
"\u{1F3C7}\u{1F3FB}",
|
||||||
|
"\u{1F3C7}\u{1F3FC}",
|
||||||
|
"\u{1F3C7}\u{1F3FD}",
|
||||||
|
"\u{1F3C7}\u{1F3FE}",
|
||||||
|
"\u{1F3C7}\u{1F3FF}",
|
||||||
|
"\u{1F3CA}\u{1F3FB}",
|
||||||
|
"\u{1F3CA}\u{1F3FC}",
|
||||||
|
"\u{1F3CA}\u{1F3FD}",
|
||||||
|
"\u{1F3CA}\u{1F3FE}",
|
||||||
|
"\u{1F3CA}\u{1F3FF}",
|
||||||
|
"\u{1F3CB}\u{1F3FB}",
|
||||||
|
"\u{1F3CB}\u{1F3FC}",
|
||||||
|
"\u{1F3CB}\u{1F3FD}",
|
||||||
|
"\u{1F3CB}\u{1F3FE}",
|
||||||
|
"\u{1F3CB}\u{1F3FF}",
|
||||||
|
"\u{1F3CC}\u{1F3FB}",
|
||||||
|
"\u{1F3CC}\u{1F3FC}",
|
||||||
|
"\u{1F3CC}\u{1F3FD}",
|
||||||
|
"\u{1F3CC}\u{1F3FE}",
|
||||||
|
"\u{1F3CC}\u{1F3FF}",
|
||||||
|
"\u{1F442}\u{1F3FB}",
|
||||||
|
"\u{1F442}\u{1F3FC}",
|
||||||
|
"\u{1F442}\u{1F3FD}",
|
||||||
|
"\u{1F442}\u{1F3FE}",
|
||||||
|
"\u{1F442}\u{1F3FF}",
|
||||||
|
"\u{1F443}\u{1F3FB}",
|
||||||
|
"\u{1F443}\u{1F3FC}",
|
||||||
|
"\u{1F443}\u{1F3FD}",
|
||||||
|
"\u{1F443}\u{1F3FE}",
|
||||||
|
"\u{1F443}\u{1F3FF}",
|
||||||
|
"\u{1F446}\u{1F3FB}",
|
||||||
|
"\u{1F446}\u{1F3FC}",
|
||||||
|
"\u{1F446}\u{1F3FD}",
|
||||||
|
"\u{1F446}\u{1F3FE}",
|
||||||
|
"\u{1F446}\u{1F3FF}",
|
||||||
|
"\u{1F447}\u{1F3FB}",
|
||||||
|
"\u{1F447}\u{1F3FC}",
|
||||||
|
"\u{1F447}\u{1F3FD}",
|
||||||
|
"\u{1F447}\u{1F3FE}",
|
||||||
|
"\u{1F447}\u{1F3FF}",
|
||||||
|
"\u{1F448}\u{1F3FB}",
|
||||||
|
"\u{1F448}\u{1F3FC}",
|
||||||
|
"\u{1F448}\u{1F3FD}",
|
||||||
|
"\u{1F448}\u{1F3FE}",
|
||||||
|
"\u{1F448}\u{1F3FF}",
|
||||||
|
"\u{1F449}\u{1F3FB}",
|
||||||
|
"\u{1F449}\u{1F3FC}",
|
||||||
|
"\u{1F449}\u{1F3FD}",
|
||||||
|
"\u{1F449}\u{1F3FE}",
|
||||||
|
"\u{1F449}\u{1F3FF}",
|
||||||
|
"\u{1F44A}\u{1F3FB}",
|
||||||
|
"\u{1F44A}\u{1F3FC}",
|
||||||
|
"\u{1F44A}\u{1F3FD}",
|
||||||
|
"\u{1F44A}\u{1F3FE}",
|
||||||
|
"\u{1F44A}\u{1F3FF}",
|
||||||
|
"\u{1F44B}\u{1F3FB}",
|
||||||
|
"\u{1F44B}\u{1F3FC}",
|
||||||
|
"\u{1F44B}\u{1F3FD}",
|
||||||
|
"\u{1F44B}\u{1F3FE}",
|
||||||
|
"\u{1F44B}\u{1F3FF}",
|
||||||
|
"\u{1F44C}\u{1F3FB}",
|
||||||
|
"\u{1F44C}\u{1F3FC}",
|
||||||
|
"\u{1F44C}\u{1F3FD}",
|
||||||
|
"\u{1F44C}\u{1F3FE}",
|
||||||
|
"\u{1F44C}\u{1F3FF}",
|
||||||
|
"\u{1F44D}\u{1F3FB}",
|
||||||
|
"\u{1F44D}\u{1F3FC}",
|
||||||
|
"\u{1F44D}\u{1F3FD}",
|
||||||
|
"\u{1F44D}\u{1F3FE}",
|
||||||
|
"\u{1F44D}\u{1F3FF}",
|
||||||
|
"\u{1F44E}\u{1F3FB}",
|
||||||
|
"\u{1F44E}\u{1F3FC}",
|
||||||
|
"\u{1F44E}\u{1F3FD}",
|
||||||
|
"\u{1F44E}\u{1F3FE}",
|
||||||
|
"\u{1F44E}\u{1F3FF}",
|
||||||
|
"\u{1F44F}\u{1F3FB}",
|
||||||
|
"\u{1F44F}\u{1F3FC}",
|
||||||
|
"\u{1F44F}\u{1F3FD}",
|
||||||
|
"\u{1F44F}\u{1F3FE}",
|
||||||
|
"\u{1F44F}\u{1F3FF}",
|
||||||
|
"\u{1F450}\u{1F3FB}",
|
||||||
|
"\u{1F450}\u{1F3FC}",
|
||||||
|
"\u{1F450}\u{1F3FD}",
|
||||||
|
"\u{1F450}\u{1F3FE}",
|
||||||
|
"\u{1F450}\u{1F3FF}",
|
||||||
|
"\u{1F466}\u{1F3FB}",
|
||||||
|
"\u{1F466}\u{1F3FC}",
|
||||||
|
"\u{1F466}\u{1F3FD}",
|
||||||
|
"\u{1F466}\u{1F3FE}",
|
||||||
|
"\u{1F466}\u{1F3FF}",
|
||||||
|
"\u{1F467}\u{1F3FB}",
|
||||||
|
"\u{1F467}\u{1F3FC}",
|
||||||
|
"\u{1F467}\u{1F3FD}",
|
||||||
|
"\u{1F467}\u{1F3FE}",
|
||||||
|
"\u{1F467}\u{1F3FF}",
|
||||||
|
"\u{1F468}\u{1F3FB}",
|
||||||
|
"\u{1F468}\u{1F3FC}",
|
||||||
|
"\u{1F468}\u{1F3FD}",
|
||||||
|
"\u{1F468}\u{1F3FE}",
|
||||||
|
"\u{1F468}\u{1F3FF}",
|
||||||
|
"\u{1F469}\u{1F3FB}",
|
||||||
|
"\u{1F469}\u{1F3FC}",
|
||||||
|
"\u{1F469}\u{1F3FD}",
|
||||||
|
"\u{1F469}\u{1F3FE}",
|
||||||
|
"\u{1F469}\u{1F3FF}",
|
||||||
|
"\u{1F46B}\u{1F3FB}",
|
||||||
|
"\u{1F46B}\u{1F3FC}",
|
||||||
|
"\u{1F46B}\u{1F3FD}",
|
||||||
|
"\u{1F46B}\u{1F3FE}",
|
||||||
|
"\u{1F46B}\u{1F3FF}",
|
||||||
|
"\u{1F46C}\u{1F3FB}",
|
||||||
|
"\u{1F46C}\u{1F3FC}",
|
||||||
|
"\u{1F46C}\u{1F3FD}",
|
||||||
|
"\u{1F46C}\u{1F3FE}",
|
||||||
|
"\u{1F46C}\u{1F3FF}",
|
||||||
|
"\u{1F46D}\u{1F3FB}",
|
||||||
|
"\u{1F46D}\u{1F3FC}",
|
||||||
|
"\u{1F46D}\u{1F3FD}",
|
||||||
|
"\u{1F46D}\u{1F3FE}",
|
||||||
|
"\u{1F46D}\u{1F3FF}",
|
||||||
|
"\u{1F46E}\u{1F3FB}",
|
||||||
|
"\u{1F46E}\u{1F3FC}",
|
||||||
|
"\u{1F46E}\u{1F3FD}",
|
||||||
|
"\u{1F46E}\u{1F3FE}",
|
||||||
|
"\u{1F46E}\u{1F3FF}",
|
||||||
|
"\u{1F470}\u{1F3FB}",
|
||||||
|
"\u{1F470}\u{1F3FC}",
|
||||||
|
"\u{1F470}\u{1F3FD}",
|
||||||
|
"\u{1F470}\u{1F3FE}",
|
||||||
|
"\u{1F470}\u{1F3FF}",
|
||||||
|
"\u{1F471}\u{1F3FB}",
|
||||||
|
"\u{1F471}\u{1F3FC}",
|
||||||
|
"\u{1F471}\u{1F3FD}",
|
||||||
|
"\u{1F471}\u{1F3FE}",
|
||||||
|
"\u{1F471}\u{1F3FF}",
|
||||||
|
"\u{1F472}\u{1F3FB}",
|
||||||
|
"\u{1F472}\u{1F3FC}",
|
||||||
|
"\u{1F472}\u{1F3FD}",
|
||||||
|
"\u{1F472}\u{1F3FE}",
|
||||||
|
"\u{1F472}\u{1F3FF}",
|
||||||
|
"\u{1F473}\u{1F3FB}",
|
||||||
|
"\u{1F473}\u{1F3FC}",
|
||||||
|
"\u{1F473}\u{1F3FD}",
|
||||||
|
"\u{1F473}\u{1F3FE}",
|
||||||
|
"\u{1F473}\u{1F3FF}",
|
||||||
|
"\u{1F474}\u{1F3FB}",
|
||||||
|
"\u{1F474}\u{1F3FC}",
|
||||||
|
"\u{1F474}\u{1F3FD}",
|
||||||
|
"\u{1F474}\u{1F3FE}",
|
||||||
|
"\u{1F474}\u{1F3FF}",
|
||||||
|
"\u{1F475}\u{1F3FB}",
|
||||||
|
"\u{1F475}\u{1F3FC}",
|
||||||
|
"\u{1F475}\u{1F3FD}",
|
||||||
|
"\u{1F475}\u{1F3FE}",
|
||||||
|
"\u{1F475}\u{1F3FF}",
|
||||||
|
"\u{1F476}\u{1F3FB}",
|
||||||
|
"\u{1F476}\u{1F3FC}",
|
||||||
|
"\u{1F476}\u{1F3FD}",
|
||||||
|
"\u{1F476}\u{1F3FE}",
|
||||||
|
"\u{1F476}\u{1F3FF}",
|
||||||
|
"\u{1F477}\u{1F3FB}",
|
||||||
|
"\u{1F477}\u{1F3FC}",
|
||||||
|
"\u{1F477}\u{1F3FD}",
|
||||||
|
"\u{1F477}\u{1F3FE}",
|
||||||
|
"\u{1F477}\u{1F3FF}",
|
||||||
|
"\u{1F478}\u{1F3FB}",
|
||||||
|
"\u{1F478}\u{1F3FC}",
|
||||||
|
"\u{1F478}\u{1F3FD}",
|
||||||
|
"\u{1F478}\u{1F3FE}",
|
||||||
|
"\u{1F478}\u{1F3FF}",
|
||||||
|
"\u{1F47C}\u{1F3FB}",
|
||||||
|
"\u{1F47C}\u{1F3FC}",
|
||||||
|
"\u{1F47C}\u{1F3FD}",
|
||||||
|
"\u{1F47C}\u{1F3FE}",
|
||||||
|
"\u{1F47C}\u{1F3FF}",
|
||||||
|
"\u{1F481}\u{1F3FB}",
|
||||||
|
"\u{1F481}\u{1F3FC}",
|
||||||
|
"\u{1F481}\u{1F3FD}",
|
||||||
|
"\u{1F481}\u{1F3FE}",
|
||||||
|
"\u{1F481}\u{1F3FF}",
|
||||||
|
"\u{1F482}\u{1F3FB}",
|
||||||
|
"\u{1F482}\u{1F3FC}",
|
||||||
|
"\u{1F482}\u{1F3FD}",
|
||||||
|
"\u{1F482}\u{1F3FE}",
|
||||||
|
"\u{1F482}\u{1F3FF}",
|
||||||
|
"\u{1F483}\u{1F3FB}",
|
||||||
|
"\u{1F483}\u{1F3FC}",
|
||||||
|
"\u{1F483}\u{1F3FD}",
|
||||||
|
"\u{1F483}\u{1F3FE}",
|
||||||
|
"\u{1F483}\u{1F3FF}",
|
||||||
|
"\u{1F485}\u{1F3FB}",
|
||||||
|
"\u{1F485}\u{1F3FC}",
|
||||||
|
"\u{1F485}\u{1F3FD}",
|
||||||
|
"\u{1F485}\u{1F3FE}",
|
||||||
|
"\u{1F485}\u{1F3FF}",
|
||||||
|
"\u{1F486}\u{1F3FB}",
|
||||||
|
"\u{1F486}\u{1F3FC}",
|
||||||
|
"\u{1F486}\u{1F3FD}",
|
||||||
|
"\u{1F486}\u{1F3FE}",
|
||||||
|
"\u{1F486}\u{1F3FF}",
|
||||||
|
"\u{1F487}\u{1F3FB}",
|
||||||
|
"\u{1F487}\u{1F3FC}",
|
||||||
|
"\u{1F487}\u{1F3FD}",
|
||||||
|
"\u{1F487}\u{1F3FE}",
|
||||||
|
"\u{1F487}\u{1F3FF}",
|
||||||
|
"\u{1F48F}\u{1F3FB}",
|
||||||
|
"\u{1F48F}\u{1F3FC}",
|
||||||
|
"\u{1F48F}\u{1F3FD}",
|
||||||
|
"\u{1F48F}\u{1F3FE}",
|
||||||
|
"\u{1F48F}\u{1F3FF}",
|
||||||
|
"\u{1F491}\u{1F3FB}",
|
||||||
|
"\u{1F491}\u{1F3FC}",
|
||||||
|
"\u{1F491}\u{1F3FD}",
|
||||||
|
"\u{1F491}\u{1F3FE}",
|
||||||
|
"\u{1F491}\u{1F3FF}",
|
||||||
|
"\u{1F4AA}\u{1F3FB}",
|
||||||
|
"\u{1F4AA}\u{1F3FC}",
|
||||||
|
"\u{1F4AA}\u{1F3FD}",
|
||||||
|
"\u{1F4AA}\u{1F3FE}",
|
||||||
|
"\u{1F4AA}\u{1F3FF}",
|
||||||
|
"\u{1F574}\u{1F3FB}",
|
||||||
|
"\u{1F574}\u{1F3FC}",
|
||||||
|
"\u{1F574}\u{1F3FD}",
|
||||||
|
"\u{1F574}\u{1F3FE}",
|
||||||
|
"\u{1F574}\u{1F3FF}",
|
||||||
|
"\u{1F575}\u{1F3FB}",
|
||||||
|
"\u{1F575}\u{1F3FC}",
|
||||||
|
"\u{1F575}\u{1F3FD}",
|
||||||
|
"\u{1F575}\u{1F3FE}",
|
||||||
|
"\u{1F575}\u{1F3FF}",
|
||||||
|
"\u{1F57A}\u{1F3FB}",
|
||||||
|
"\u{1F57A}\u{1F3FC}",
|
||||||
|
"\u{1F57A}\u{1F3FD}",
|
||||||
|
"\u{1F57A}\u{1F3FE}",
|
||||||
|
"\u{1F57A}\u{1F3FF}",
|
||||||
|
"\u{1F590}\u{1F3FB}",
|
||||||
|
"\u{1F590}\u{1F3FC}",
|
||||||
|
"\u{1F590}\u{1F3FD}",
|
||||||
|
"\u{1F590}\u{1F3FE}",
|
||||||
|
"\u{1F590}\u{1F3FF}",
|
||||||
|
"\u{1F595}\u{1F3FB}",
|
||||||
|
"\u{1F595}\u{1F3FC}",
|
||||||
|
"\u{1F595}\u{1F3FD}",
|
||||||
|
"\u{1F595}\u{1F3FE}",
|
||||||
|
"\u{1F595}\u{1F3FF}",
|
||||||
|
"\u{1F596}\u{1F3FB}",
|
||||||
|
"\u{1F596}\u{1F3FC}",
|
||||||
|
"\u{1F596}\u{1F3FD}",
|
||||||
|
"\u{1F596}\u{1F3FE}",
|
||||||
|
"\u{1F596}\u{1F3FF}",
|
||||||
|
"\u{1F645}\u{1F3FB}",
|
||||||
|
"\u{1F645}\u{1F3FC}",
|
||||||
|
"\u{1F645}\u{1F3FD}",
|
||||||
|
"\u{1F645}\u{1F3FE}",
|
||||||
|
"\u{1F645}\u{1F3FF}",
|
||||||
|
"\u{1F646}\u{1F3FB}",
|
||||||
|
"\u{1F646}\u{1F3FC}",
|
||||||
|
"\u{1F646}\u{1F3FD}",
|
||||||
|
"\u{1F646}\u{1F3FE}",
|
||||||
|
"\u{1F646}\u{1F3FF}",
|
||||||
|
"\u{1F647}\u{1F3FB}",
|
||||||
|
"\u{1F647}\u{1F3FC}",
|
||||||
|
"\u{1F647}\u{1F3FD}",
|
||||||
|
"\u{1F647}\u{1F3FE}",
|
||||||
|
"\u{1F647}\u{1F3FF}",
|
||||||
|
"\u{1F64B}\u{1F3FB}",
|
||||||
|
"\u{1F64B}\u{1F3FC}",
|
||||||
|
"\u{1F64B}\u{1F3FD}",
|
||||||
|
"\u{1F64B}\u{1F3FE}",
|
||||||
|
"\u{1F64B}\u{1F3FF}",
|
||||||
|
"\u{1F64C}\u{1F3FB}",
|
||||||
|
"\u{1F64C}\u{1F3FC}",
|
||||||
|
"\u{1F64C}\u{1F3FD}",
|
||||||
|
"\u{1F64C}\u{1F3FE}",
|
||||||
|
"\u{1F64C}\u{1F3FF}",
|
||||||
|
"\u{1F64D}\u{1F3FB}",
|
||||||
|
"\u{1F64D}\u{1F3FC}",
|
||||||
|
"\u{1F64D}\u{1F3FD}",
|
||||||
|
"\u{1F64D}\u{1F3FE}",
|
||||||
|
"\u{1F64D}\u{1F3FF}",
|
||||||
|
"\u{1F64E}\u{1F3FB}",
|
||||||
|
"\u{1F64E}\u{1F3FC}",
|
||||||
|
"\u{1F64E}\u{1F3FD}",
|
||||||
|
"\u{1F64E}\u{1F3FE}",
|
||||||
|
"\u{1F64E}\u{1F3FF}",
|
||||||
|
"\u{1F64F}\u{1F3FB}",
|
||||||
|
"\u{1F64F}\u{1F3FC}",
|
||||||
|
"\u{1F64F}\u{1F3FD}",
|
||||||
|
"\u{1F64F}\u{1F3FE}",
|
||||||
|
"\u{1F64F}\u{1F3FF}",
|
||||||
|
"\u{1F6A3}\u{1F3FB}",
|
||||||
|
"\u{1F6A3}\u{1F3FC}",
|
||||||
|
"\u{1F6A3}\u{1F3FD}",
|
||||||
|
"\u{1F6A3}\u{1F3FE}",
|
||||||
|
"\u{1F6A3}\u{1F3FF}",
|
||||||
|
"\u{1F6B4}\u{1F3FB}",
|
||||||
|
"\u{1F6B4}\u{1F3FC}",
|
||||||
|
"\u{1F6B4}\u{1F3FD}",
|
||||||
|
"\u{1F6B4}\u{1F3FE}",
|
||||||
|
"\u{1F6B4}\u{1F3FF}",
|
||||||
|
"\u{1F6B5}\u{1F3FB}",
|
||||||
|
"\u{1F6B5}\u{1F3FC}",
|
||||||
|
"\u{1F6B5}\u{1F3FD}",
|
||||||
|
"\u{1F6B5}\u{1F3FE}",
|
||||||
|
"\u{1F6B5}\u{1F3FF}",
|
||||||
|
"\u{1F6B6}\u{1F3FB}",
|
||||||
|
"\u{1F6B6}\u{1F3FC}",
|
||||||
|
"\u{1F6B6}\u{1F3FD}",
|
||||||
|
"\u{1F6B6}\u{1F3FE}",
|
||||||
|
"\u{1F6B6}\u{1F3FF}",
|
||||||
|
"\u{1F6C0}\u{1F3FB}",
|
||||||
|
"\u{1F6C0}\u{1F3FC}",
|
||||||
|
"\u{1F6C0}\u{1F3FD}",
|
||||||
|
"\u{1F6C0}\u{1F3FE}",
|
||||||
|
"\u{1F6C0}\u{1F3FF}",
|
||||||
|
"\u{1F6CC}\u{1F3FB}",
|
||||||
|
"\u{1F6CC}\u{1F3FC}",
|
||||||
|
"\u{1F6CC}\u{1F3FD}",
|
||||||
|
"\u{1F6CC}\u{1F3FE}",
|
||||||
|
"\u{1F6CC}\u{1F3FF}",
|
||||||
|
"\u{1F90C}\u{1F3FB}",
|
||||||
|
"\u{1F90C}\u{1F3FC}",
|
||||||
|
"\u{1F90C}\u{1F3FD}",
|
||||||
|
"\u{1F90C}\u{1F3FE}",
|
||||||
|
"\u{1F90C}\u{1F3FF}",
|
||||||
|
"\u{1F90F}\u{1F3FB}",
|
||||||
|
"\u{1F90F}\u{1F3FC}",
|
||||||
|
"\u{1F90F}\u{1F3FD}",
|
||||||
|
"\u{1F90F}\u{1F3FE}",
|
||||||
|
"\u{1F90F}\u{1F3FF}",
|
||||||
|
"\u{1F918}\u{1F3FB}",
|
||||||
|
"\u{1F918}\u{1F3FC}",
|
||||||
|
"\u{1F918}\u{1F3FD}",
|
||||||
|
"\u{1F918}\u{1F3FE}",
|
||||||
|
"\u{1F918}\u{1F3FF}",
|
||||||
|
"\u{1F919}\u{1F3FB}",
|
||||||
|
"\u{1F919}\u{1F3FC}",
|
||||||
|
"\u{1F919}\u{1F3FD}",
|
||||||
|
"\u{1F919}\u{1F3FE}",
|
||||||
|
"\u{1F919}\u{1F3FF}",
|
||||||
|
"\u{1F91A}\u{1F3FB}",
|
||||||
|
"\u{1F91A}\u{1F3FC}",
|
||||||
|
"\u{1F91A}\u{1F3FD}",
|
||||||
|
"\u{1F91A}\u{1F3FE}",
|
||||||
|
"\u{1F91A}\u{1F3FF}",
|
||||||
|
"\u{1F91B}\u{1F3FB}",
|
||||||
|
"\u{1F91B}\u{1F3FC}",
|
||||||
|
"\u{1F91B}\u{1F3FD}",
|
||||||
|
"\u{1F91B}\u{1F3FE}",
|
||||||
|
"\u{1F91B}\u{1F3FF}",
|
||||||
|
"\u{1F91C}\u{1F3FB}",
|
||||||
|
"\u{1F91C}\u{1F3FC}",
|
||||||
|
"\u{1F91C}\u{1F3FD}",
|
||||||
|
"\u{1F91C}\u{1F3FE}",
|
||||||
|
"\u{1F91C}\u{1F3FF}",
|
||||||
|
"\u{1F91D}\u{1F3FB}",
|
||||||
|
"\u{1F91D}\u{1F3FC}",
|
||||||
|
"\u{1F91D}\u{1F3FD}",
|
||||||
|
"\u{1F91D}\u{1F3FE}",
|
||||||
|
"\u{1F91D}\u{1F3FF}",
|
||||||
|
"\u{1F91E}\u{1F3FB}",
|
||||||
|
"\u{1F91E}\u{1F3FC}",
|
||||||
|
"\u{1F91E}\u{1F3FD}",
|
||||||
|
"\u{1F91E}\u{1F3FE}",
|
||||||
|
"\u{1F91E}\u{1F3FF}",
|
||||||
|
"\u{1F91F}\u{1F3FB}",
|
||||||
|
"\u{1F91F}\u{1F3FC}",
|
||||||
|
"\u{1F91F}\u{1F3FD}",
|
||||||
|
"\u{1F91F}\u{1F3FE}",
|
||||||
|
"\u{1F91F}\u{1F3FF}",
|
||||||
|
"\u{1F926}\u{1F3FB}",
|
||||||
|
"\u{1F926}\u{1F3FC}",
|
||||||
|
"\u{1F926}\u{1F3FD}",
|
||||||
|
"\u{1F926}\u{1F3FE}",
|
||||||
|
"\u{1F926}\u{1F3FF}",
|
||||||
|
"\u{1F930}\u{1F3FB}",
|
||||||
|
"\u{1F930}\u{1F3FC}",
|
||||||
|
"\u{1F930}\u{1F3FD}",
|
||||||
|
"\u{1F930}\u{1F3FE}",
|
||||||
|
"\u{1F930}\u{1F3FF}",
|
||||||
|
"\u{1F931}\u{1F3FB}",
|
||||||
|
"\u{1F931}\u{1F3FC}",
|
||||||
|
"\u{1F931}\u{1F3FD}",
|
||||||
|
"\u{1F931}\u{1F3FE}",
|
||||||
|
"\u{1F931}\u{1F3FF}",
|
||||||
|
"\u{1F932}\u{1F3FB}",
|
||||||
|
"\u{1F932}\u{1F3FC}",
|
||||||
|
"\u{1F932}\u{1F3FD}",
|
||||||
|
"\u{1F932}\u{1F3FE}",
|
||||||
|
"\u{1F932}\u{1F3FF}",
|
||||||
|
"\u{1F933}\u{1F3FB}",
|
||||||
|
"\u{1F933}\u{1F3FC}",
|
||||||
|
"\u{1F933}\u{1F3FD}",
|
||||||
|
"\u{1F933}\u{1F3FE}",
|
||||||
|
"\u{1F933}\u{1F3FF}",
|
||||||
|
"\u{1F934}\u{1F3FB}",
|
||||||
|
"\u{1F934}\u{1F3FC}",
|
||||||
|
"\u{1F934}\u{1F3FD}",
|
||||||
|
"\u{1F934}\u{1F3FE}",
|
||||||
|
"\u{1F934}\u{1F3FF}",
|
||||||
|
"\u{1F935}\u{1F3FB}",
|
||||||
|
"\u{1F935}\u{1F3FC}",
|
||||||
|
"\u{1F935}\u{1F3FD}",
|
||||||
|
"\u{1F935}\u{1F3FE}",
|
||||||
|
"\u{1F935}\u{1F3FF}",
|
||||||
|
"\u{1F936}\u{1F3FB}",
|
||||||
|
"\u{1F936}\u{1F3FC}",
|
||||||
|
"\u{1F936}\u{1F3FD}",
|
||||||
|
"\u{1F936}\u{1F3FE}",
|
||||||
|
"\u{1F936}\u{1F3FF}",
|
||||||
|
"\u{1F937}\u{1F3FB}",
|
||||||
|
"\u{1F937}\u{1F3FC}",
|
||||||
|
"\u{1F937}\u{1F3FD}",
|
||||||
|
"\u{1F937}\u{1F3FE}",
|
||||||
|
"\u{1F937}\u{1F3FF}",
|
||||||
|
"\u{1F938}\u{1F3FB}",
|
||||||
|
"\u{1F938}\u{1F3FC}",
|
||||||
|
"\u{1F938}\u{1F3FD}",
|
||||||
|
"\u{1F938}\u{1F3FE}",
|
||||||
|
"\u{1F938}\u{1F3FF}",
|
||||||
|
"\u{1F939}\u{1F3FB}",
|
||||||
|
"\u{1F939}\u{1F3FC}",
|
||||||
|
"\u{1F939}\u{1F3FD}",
|
||||||
|
"\u{1F939}\u{1F3FE}",
|
||||||
|
"\u{1F939}\u{1F3FF}",
|
||||||
|
"\u{1F93D}\u{1F3FB}",
|
||||||
|
"\u{1F93D}\u{1F3FC}",
|
||||||
|
"\u{1F93D}\u{1F3FD}",
|
||||||
|
"\u{1F93D}\u{1F3FE}",
|
||||||
|
"\u{1F93D}\u{1F3FF}",
|
||||||
|
"\u{1F93E}\u{1F3FB}",
|
||||||
|
"\u{1F93E}\u{1F3FC}",
|
||||||
|
"\u{1F93E}\u{1F3FD}",
|
||||||
|
"\u{1F93E}\u{1F3FE}",
|
||||||
|
"\u{1F93E}\u{1F3FF}",
|
||||||
|
"\u{1F977}\u{1F3FB}",
|
||||||
|
"\u{1F977}\u{1F3FC}",
|
||||||
|
"\u{1F977}\u{1F3FD}",
|
||||||
|
"\u{1F977}\u{1F3FE}",
|
||||||
|
"\u{1F977}\u{1F3FF}",
|
||||||
|
"\u{1F9B5}\u{1F3FB}",
|
||||||
|
"\u{1F9B5}\u{1F3FC}",
|
||||||
|
"\u{1F9B5}\u{1F3FD}",
|
||||||
|
"\u{1F9B5}\u{1F3FE}",
|
||||||
|
"\u{1F9B5}\u{1F3FF}",
|
||||||
|
"\u{1F9B6}\u{1F3FB}",
|
||||||
|
"\u{1F9B6}\u{1F3FC}",
|
||||||
|
"\u{1F9B6}\u{1F3FD}",
|
||||||
|
"\u{1F9B6}\u{1F3FE}",
|
||||||
|
"\u{1F9B6}\u{1F3FF}",
|
||||||
|
"\u{1F9B8}\u{1F3FB}",
|
||||||
|
"\u{1F9B8}\u{1F3FC}",
|
||||||
|
"\u{1F9B8}\u{1F3FD}",
|
||||||
|
"\u{1F9B8}\u{1F3FE}",
|
||||||
|
"\u{1F9B8}\u{1F3FF}",
|
||||||
|
"\u{1F9B9}\u{1F3FB}",
|
||||||
|
"\u{1F9B9}\u{1F3FC}",
|
||||||
|
"\u{1F9B9}\u{1F3FD}",
|
||||||
|
"\u{1F9B9}\u{1F3FE}",
|
||||||
|
"\u{1F9B9}\u{1F3FF}",
|
||||||
|
"\u{1F9BB}\u{1F3FB}",
|
||||||
|
"\u{1F9BB}\u{1F3FC}",
|
||||||
|
"\u{1F9BB}\u{1F3FD}",
|
||||||
|
"\u{1F9BB}\u{1F3FE}",
|
||||||
|
"\u{1F9BB}\u{1F3FF}",
|
||||||
|
"\u{1F9CD}\u{1F3FB}",
|
||||||
|
"\u{1F9CD}\u{1F3FC}",
|
||||||
|
"\u{1F9CD}\u{1F3FD}",
|
||||||
|
"\u{1F9CD}\u{1F3FE}",
|
||||||
|
"\u{1F9CD}\u{1F3FF}",
|
||||||
|
"\u{1F9CE}\u{1F3FB}",
|
||||||
|
"\u{1F9CE}\u{1F3FC}",
|
||||||
|
"\u{1F9CE}\u{1F3FD}",
|
||||||
|
"\u{1F9CE}\u{1F3FE}",
|
||||||
|
"\u{1F9CE}\u{1F3FF}",
|
||||||
|
"\u{1F9CF}\u{1F3FB}",
|
||||||
|
"\u{1F9CF}\u{1F3FC}",
|
||||||
|
"\u{1F9CF}\u{1F3FD}",
|
||||||
|
"\u{1F9CF}\u{1F3FE}",
|
||||||
|
"\u{1F9CF}\u{1F3FF}",
|
||||||
|
"\u{1F9D1}\u{1F3FB}",
|
||||||
|
"\u{1F9D1}\u{1F3FC}",
|
||||||
|
"\u{1F9D1}\u{1F3FD}",
|
||||||
|
"\u{1F9D1}\u{1F3FE}",
|
||||||
|
"\u{1F9D1}\u{1F3FF}",
|
||||||
|
"\u{1F9D2}\u{1F3FB}",
|
||||||
|
"\u{1F9D2}\u{1F3FC}",
|
||||||
|
"\u{1F9D2}\u{1F3FD}",
|
||||||
|
"\u{1F9D2}\u{1F3FE}",
|
||||||
|
"\u{1F9D2}\u{1F3FF}",
|
||||||
|
"\u{1F9D3}\u{1F3FB}",
|
||||||
|
"\u{1F9D3}\u{1F3FC}",
|
||||||
|
"\u{1F9D3}\u{1F3FD}",
|
||||||
|
"\u{1F9D3}\u{1F3FE}",
|
||||||
|
"\u{1F9D3}\u{1F3FF}",
|
||||||
|
"\u{1F9D4}\u{1F3FB}",
|
||||||
|
"\u{1F9D4}\u{1F3FC}",
|
||||||
|
"\u{1F9D4}\u{1F3FD}",
|
||||||
|
"\u{1F9D4}\u{1F3FE}",
|
||||||
|
"\u{1F9D4}\u{1F3FF}",
|
||||||
|
"\u{1F9D5}\u{1F3FB}",
|
||||||
|
"\u{1F9D5}\u{1F3FC}",
|
||||||
|
"\u{1F9D5}\u{1F3FD}",
|
||||||
|
"\u{1F9D5}\u{1F3FE}",
|
||||||
|
"\u{1F9D5}\u{1F3FF}",
|
||||||
|
"\u{1F9D6}\u{1F3FB}",
|
||||||
|
"\u{1F9D6}\u{1F3FC}",
|
||||||
|
"\u{1F9D6}\u{1F3FD}",
|
||||||
|
"\u{1F9D6}\u{1F3FE}",
|
||||||
|
"\u{1F9D6}\u{1F3FF}",
|
||||||
|
"\u{1F9D7}\u{1F3FB}",
|
||||||
|
"\u{1F9D7}\u{1F3FC}",
|
||||||
|
"\u{1F9D7}\u{1F3FD}",
|
||||||
|
"\u{1F9D7}\u{1F3FE}",
|
||||||
|
"\u{1F9D7}\u{1F3FF}",
|
||||||
|
"\u{1F9D8}\u{1F3FB}",
|
||||||
|
"\u{1F9D8}\u{1F3FC}",
|
||||||
|
"\u{1F9D8}\u{1F3FD}",
|
||||||
|
"\u{1F9D8}\u{1F3FE}",
|
||||||
|
"\u{1F9D8}\u{1F3FF}",
|
||||||
|
"\u{1F9D9}\u{1F3FB}",
|
||||||
|
"\u{1F9D9}\u{1F3FC}",
|
||||||
|
"\u{1F9D9}\u{1F3FD}",
|
||||||
|
"\u{1F9D9}\u{1F3FE}",
|
||||||
|
"\u{1F9D9}\u{1F3FF}",
|
||||||
|
"\u{1F9DA}\u{1F3FB}",
|
||||||
|
"\u{1F9DA}\u{1F3FC}",
|
||||||
|
"\u{1F9DA}\u{1F3FD}",
|
||||||
|
"\u{1F9DA}\u{1F3FE}",
|
||||||
|
"\u{1F9DA}\u{1F3FF}",
|
||||||
|
"\u{1F9DB}\u{1F3FB}",
|
||||||
|
"\u{1F9DB}\u{1F3FC}",
|
||||||
|
"\u{1F9DB}\u{1F3FD}",
|
||||||
|
"\u{1F9DB}\u{1F3FE}",
|
||||||
|
"\u{1F9DB}\u{1F3FF}",
|
||||||
|
"\u{1F9DC}\u{1F3FB}",
|
||||||
|
"\u{1F9DC}\u{1F3FC}",
|
||||||
|
"\u{1F9DC}\u{1F3FD}",
|
||||||
|
"\u{1F9DC}\u{1F3FE}",
|
||||||
|
"\u{1F9DC}\u{1F3FF}",
|
||||||
|
"\u{1F9DD}\u{1F3FB}",
|
||||||
|
"\u{1F9DD}\u{1F3FC}",
|
||||||
|
"\u{1F9DD}\u{1F3FD}",
|
||||||
|
"\u{1F9DD}\u{1F3FE}",
|
||||||
|
"\u{1F9DD}\u{1F3FF}",
|
||||||
|
"\u{1FAC3}\u{1F3FB}",
|
||||||
|
"\u{1FAC3}\u{1F3FC}",
|
||||||
|
"\u{1FAC3}\u{1F3FD}",
|
||||||
|
"\u{1FAC3}\u{1F3FE}",
|
||||||
|
"\u{1FAC3}\u{1F3FF}",
|
||||||
|
"\u{1FAC4}\u{1F3FB}",
|
||||||
|
"\u{1FAC4}\u{1F3FC}",
|
||||||
|
"\u{1FAC4}\u{1F3FD}",
|
||||||
|
"\u{1FAC4}\u{1F3FE}",
|
||||||
|
"\u{1FAC4}\u{1F3FF}",
|
||||||
|
"\u{1FAC5}\u{1F3FB}",
|
||||||
|
"\u{1FAC5}\u{1F3FC}",
|
||||||
|
"\u{1FAC5}\u{1F3FD}",
|
||||||
|
"\u{1FAC5}\u{1F3FE}",
|
||||||
|
"\u{1FAC5}\u{1F3FF}",
|
||||||
|
"\u{1FAF0}\u{1F3FB}",
|
||||||
|
"\u{1FAF0}\u{1F3FC}",
|
||||||
|
"\u{1FAF0}\u{1F3FD}",
|
||||||
|
"\u{1FAF0}\u{1F3FE}",
|
||||||
|
"\u{1FAF0}\u{1F3FF}",
|
||||||
|
"\u{1FAF1}\u{1F3FB}",
|
||||||
|
"\u{1FAF1}\u{1F3FC}",
|
||||||
|
"\u{1FAF1}\u{1F3FD}",
|
||||||
|
"\u{1FAF1}\u{1F3FE}",
|
||||||
|
"\u{1FAF1}\u{1F3FF}",
|
||||||
|
"\u{1FAF2}\u{1F3FB}",
|
||||||
|
"\u{1FAF2}\u{1F3FC}",
|
||||||
|
"\u{1FAF2}\u{1F3FD}",
|
||||||
|
"\u{1FAF2}\u{1F3FE}",
|
||||||
|
"\u{1FAF2}\u{1F3FF}",
|
||||||
|
"\u{1FAF3}\u{1F3FB}",
|
||||||
|
"\u{1FAF3}\u{1F3FC}",
|
||||||
|
"\u{1FAF3}\u{1F3FD}",
|
||||||
|
"\u{1FAF3}\u{1F3FE}",
|
||||||
|
"\u{1FAF3}\u{1F3FF}",
|
||||||
|
"\u{1FAF4}\u{1F3FB}",
|
||||||
|
"\u{1FAF4}\u{1F3FC}",
|
||||||
|
"\u{1FAF4}\u{1F3FD}",
|
||||||
|
"\u{1FAF4}\u{1F3FE}",
|
||||||
|
"\u{1FAF4}\u{1F3FF}",
|
||||||
|
"\u{1FAF5}\u{1F3FB}",
|
||||||
|
"\u{1FAF5}\u{1F3FC}",
|
||||||
|
"\u{1FAF5}\u{1F3FD}",
|
||||||
|
"\u{1FAF5}\u{1F3FE}",
|
||||||
|
"\u{1FAF5}\u{1F3FF}",
|
||||||
|
"\u{1FAF6}\u{1F3FB}",
|
||||||
|
"\u{1FAF6}\u{1F3FC}",
|
||||||
|
"\u{1FAF6}\u{1F3FD}",
|
||||||
|
"\u{1FAF6}\u{1F3FE}",
|
||||||
|
"\u{1FAF6}\u{1F3FF}"
|
||||||
|
],
|
||||||
|
nonMatchStrings: [
|
||||||
|
"\u{1F3FB}",
|
||||||
|
"\u261D",
|
||||||
|
"\u{1F3FC}",
|
||||||
|
"\u261D",
|
||||||
|
"\u{1F3FD}",
|
||||||
|
"\u261D",
|
||||||
|
"\u{1F3FE}",
|
||||||
|
"\u261D",
|
||||||
|
"\u{1F3FF}",
|
||||||
|
"\u261D"
|
||||||
|
],
|
||||||
|
});
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Tag_Sequence` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{RGI_Emoji_Tag_Sequence}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_Tag_Sequence` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{RGI_Emoji_Tag_Sequence}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Tag_Sequence` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{RGI_Emoji_Tag_Sequence}/u;
|
|
@ -0,0 +1,35 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_Tag_Sequence` (property of strings)
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-static-semantics-unicodematchproperty-p
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
includes: [regExpUtils.js]
|
||||||
|
---*/
|
||||||
|
|
||||||
|
testPropertyOfStrings({
|
||||||
|
regExp: /^\p{RGI_Emoji_Tag_Sequence}+$/v,
|
||||||
|
expression: "\\p{RGI_Emoji_Tag_Sequence}",
|
||||||
|
matchStrings: [
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0065}\u{E006E}\u{E0067}\u{E007F}",
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0073}\u{E0063}\u{E0074}\u{E007F}",
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0077}\u{E006C}\u{E0073}\u{E007F}"
|
||||||
|
],
|
||||||
|
nonMatchStrings: [
|
||||||
|
"\u{E0067}\u{E0062}\u{E0065}\u{E006E}\u{E0067}\u{E007F}",
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0065}\u{E006E}\u{E0067}",
|
||||||
|
"\u{1F3F4}\u{E0062}\u{E0065}\u{E006E}\u{E0067}\u{E007F}",
|
||||||
|
"\u{E0067}\u{E0062}\u{E0073}\u{E0063}\u{E0074}\u{E007F}",
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0073}\u{E0063}\u{E0074}",
|
||||||
|
"\u{1F3F4}\u{E0062}\u{E0073}\u{E0063}\u{E0074}\u{E007F}",
|
||||||
|
"\u{E0067}\u{E0062}\u{E0077}\u{E006C}\u{E0073}\u{E007F}",
|
||||||
|
"\u{1F3F4}\u{E0067}\u{E0062}\u{E0077}\u{E006C}\u{E0073}",
|
||||||
|
"\u{1F3F4}\u{E0062}\u{E0077}\u{E006C}\u{E0073}\u{E007F}"
|
||||||
|
],
|
||||||
|
});
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_ZWJ_Sequence` (property of strings) with `[^\p{…}]` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/[^\p{RGI_Emoji_ZWJ_Sequence}]/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Negating Unicode property escapes for `RGI_Emoji_ZWJ_Sequence` (property of strings) with `\P{…}` throws an early error.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-isvalidregularexpressionliteral
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\P{RGI_Emoji_ZWJ_Sequence}/v;
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2021 Mathias Bynens. All rights reserved.
|
||||||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||||||
|
|
||||||
|
/*---
|
||||||
|
author: Mathias Bynens
|
||||||
|
description: >
|
||||||
|
Unicode property escapes for `RGI_Emoji_ZWJ_Sequence` (property of strings) with the `u` flag throws an early error. Properties of strings are only supported through the `v` flag.
|
||||||
|
info: |
|
||||||
|
Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
|
||||||
|
Unicode v14.0.0
|
||||||
|
esid: sec-patterns-static-semantics-early-errors
|
||||||
|
features: [regexp-unicode-property-escapes, regexp-v-flag]
|
||||||
|
negative:
|
||||||
|
phase: parse
|
||||||
|
type: SyntaxError
|
||||||
|
---*/
|
||||||
|
|
||||||
|
$DONOTEVALUATE();
|
||||||
|
|
||||||
|
/\p{RGI_Emoji_ZWJ_Sequence}/u;
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue