summaryrefslogtreecommitdiff
path: root/regcomp.h
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2019-09-22 15:26:03 -0600
committerKarl Williamson <khw@cpan.org>2019-09-29 11:46:25 -0600
commitc45abc0a05f632031d992cdd210e7d08b1e71cf2 (patch)
treee87510c4564d3e7694c71a1889b9f1c56b049410 /regcomp.h
parent741c97a294f71b1272425b04db64d5ae4fca312f (diff)
downloadperl-c45abc0a05f632031d992cdd210e7d08b1e71cf2.tar.gz
regcomp.h: Add comments
Diffstat (limited to 'regcomp.h')
-rw-r--r--regcomp.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/regcomp.h b/regcomp.h
index d756026eda..9bdd9453bc 100644
--- a/regcomp.h
+++ b/regcomp.h
@@ -334,8 +334,15 @@ struct regnode_ssc {
#define STR_LEN(p) (((struct regnode_string *)p)->str_len)
#define STRING(p) (((struct regnode_string *)p)->string)
+
+/* The number of (smallest) regnode equivalents that a string of length l bytes
+ * occupies */
#define STR_SZ(l) (((l) + sizeof(regnode) - 1) / sizeof(regnode))
+
+/* The number of (smallest) regnode equivalents that the EXACTISH node 'p'
+ * occupies */
#define NODE_SZ_STR(p) (STR_SZ(STR_LEN(p))+1)
+
#define setSTR_LEN(p,v) \
((struct regnode_string *)(p))->str_len = (v);
@@ -716,6 +723,8 @@ struct regnode_ssc {
# define UCHARAT(p) ((int)*(p)&CHARMASK)
#endif
+/* Number of regnode equivalents that 'guy' occupies beyond the size of the
+ * smallest regnode. */
#define EXTRA_SIZE(guy) ((sizeof(guy)-1)/sizeof(struct regnode))
#define REG_ZERO_LEN_SEEN 0x00000001