summaryrefslogtreecommitdiff
path: root/regen/regcharclass.pl
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2016-09-12 13:38:22 -0600
committerKarl Williamson <khw@cpan.org>2016-09-17 21:10:50 -0600
commite23e8bc1957a5981b8a507b62471ae38ec06c661 (patch)
tree6003733df6d2678d9722de250a532285604b5701 /regen/regcharclass.pl
parent2c6ed66c0652679e56178882f052322c3fe69a8f (diff)
downloadperl-e23e8bc1957a5981b8a507b62471ae38ec06c661.tar.gz
Add macro for determining if UTF-8 is Unicode-strict
Diffstat (limited to 'regen/regcharclass.pl')
-rwxr-xr-xregen/regcharclass.pl43
1 files changed, 43 insertions, 0 deletions
diff --git a/regen/regcharclass.pl b/regen/regcharclass.pl
index bd677acd15..abc4942354 100755
--- a/regen/regcharclass.pl
+++ b/regen/regcharclass.pl
@@ -1660,6 +1660,49 @@ SURROGATE: Surrogate code points
#=> UTF8 :no_length_checks only_ebcdic_platform
#0xA0 - 0x1FFFFF
+#STRICT_UTF8_CHAR: Matches legal Unicode UTF-8 variant code points, no surrrogates nor non-character code points
+#=> UTF8 :no_length_checks only_ascii_platform
+#0x0080 - 0xD7FF
+#0xE000 - 0xFDCF
+#0xFDF0 - 0xFFFD
+#0x10000 - 0x1FFFD
+#0x20000 - 0x2FFFD
+#0x30000 - 0x3FFFD
+#0x40000 - 0x4FFFD
+#0x50000 - 0x5FFFD
+#0x60000 - 0x6FFFD
+#0x70000 - 0x7FFFD
+#0x80000 - 0x8FFFD
+#0x90000 - 0x9FFFD
+#0xA0000 - 0xAFFFD
+#0xB0000 - 0xBFFFD
+#0xC0000 - 0xCFFFD
+#0xD0000 - 0xDFFFD
+#0xE0000 - 0xEFFFD
+#0xF0000 - 0xFFFFD
+#0x100000 - 0x10FFFD
+#
+#STRICT_UTF8_CHAR: Matches legal Unicode UTF-8 variant code points, no surrrogates nor non-character code points
+#=> UTF8 :no_length_checks only_ebcdic_platform
+#0x00A0 - 0xD7FF
+#0xE000 - 0xFDCF
+#0xFDF0 - 0xFFFD
+#0x10000 - 0x1FFFD
+#0x20000 - 0x2FFFD
+#0x30000 - 0x3FFFD
+#0x40000 - 0x4FFFD
+#0x50000 - 0x5FFFD
+#0x60000 - 0x6FFFD
+#0x70000 - 0x7FFFD
+#0x80000 - 0x8FFFD
+#0x90000 - 0x9FFFD
+#0xA0000 - 0xAFFFD
+#0xB0000 - 0xBFFFD
+#0xC0000 - 0xCFFFD
+#0xD0000 - 0xDFFFD
+#0xE0000 - 0xEFFFD
+#0xF0000 - 0xFFFFD
+#0x100000 - 0x10FFFD
QUOTEMETA: Meta-characters that \Q should quote
=> high :fast