summaryrefslogtreecommitdiff
path: root/regnodes.h
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2015-02-17 15:03:32 -0700
committerKarl Williamson <khw@cpan.org>2015-02-19 22:55:01 -0700
commit64935bc6975bb01af403817752e88d6540c8711d (patch)
tree6a1619ac46d1501a5b296a2b69d9af0b98db8c58 /regnodes.h
parent0e0b935601a8b7a2c56653412a94a36f986bc34f (diff)
downloadperl-64935bc6975bb01af403817752e88d6540c8711d.tar.gz
Add qr/\b{gcb}/
A function implements seeing if the space between any two characters is a grapheme cluster break. Afer I wrote this, I realized that an array lookup might be a better implementation, but the deadline for v5.22 was too close to change it. I did see that my gcc optimized it down to an array lookup. This makes the implementation of \X go from being complicated to trivial.
Diffstat (limited to 'regnodes.h')
-rw-r--r--regnodes.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/regnodes.h b/regnodes.h
index 439fa8d7b1..144d6f63b5 100644
--- a/regnodes.h
+++ b/regnodes.h
@@ -19,14 +19,14 @@
#define MEOL 5 /* 0x05 Same, assuming multiline: /$/m */
#define EOS 6 /* 0x06 Match "" at end of string: /\z/ */
#define GPOS 7 /* 0x07 Matches where last m//g left off. */
-#define BOUND 8 /* 0x08 Match "" at any word boundary using native charset rules for non-utf8 */
-#define BOUNDL 9 /* 0x09 Match "" at any locale word boundary */
-#define BOUNDU 10 /* 0x0a Match "" at any word boundary using Unicode rules */
-#define BOUNDA 11 /* 0x0b Match "" at any word boundary using ASCII rules */
-#define NBOUND 12 /* 0x0c Match "" at any word non-boundary using native charset rules for non-utf8 */
-#define NBOUNDL 13 /* 0x0d Match "" at any locale word non-boundary */
-#define NBOUNDU 14 /* 0x0e Match "" at any word non-boundary using Unicode rules */
-#define NBOUNDA 15 /* 0x0f Match "" at any word non-boundary using ASCII rules */
+#define BOUND 8 /* 0x08 Match "" at any word boundary using native charset rules for non-utf8, otherwise Unicode rules */
+#define BOUNDL 9 /* 0x09 Match "" at any boundary of a given type using locale rules */
+#define BOUNDU 10 /* 0x0a Match "" at any boundary of a given type using Unicode rules */
+#define BOUNDA 11 /* 0x0b Match "" at any boundary of a given type using ASCII rules */
+#define NBOUND 12 /* 0x0c Match "" at any word non-boundary using native charset rules for non-utf8, otherwise Unicode rules */
+#define NBOUNDL 13 /* 0x0d Match "" at any boundary of a given type using locale rules */
+#define NBOUNDU 14 /* 0x0e Match "" at any boundary of a given type using using Unicode rules */
+#define NBOUNDA 15 /* 0x0f Match "" at any boundary of a given type using using ASCII rules */
#define REG_ANY 16 /* 0x10 Match any one character (except newline). */
#define SANY 17 /* 0x11 Match any one character. */
#define CANY 18 /* 0x12 Match any one byte. */