aboutsummaryrefslogtreecommitdiff
path: root/lptree.h
diff options
context:
space:
mode:
Diffstat (limited to 'lptree.h')
-rw-r--r--lptree.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/lptree.h b/lptree.h
index 43299a4..5ed67eb 100644
--- a/lptree.h
+++ b/lptree.h
@@ -44,10 +44,13 @@ typedef struct TTree {
44 byte tag; 44 byte tag;
45 byte cap; /* kind of capture (if it is a capture) */ 45 byte cap; /* kind of capture (if it is a capture) */
46 unsigned short key; /* key in ktable for Lua data (0 if no key) */ 46 unsigned short key; /* key in ktable for Lua data (0 if no key) */
47 Labelset labels; /* labeled failure */
48 union { 47 union {
49 int ps; /* occasional second sibling */
50 int n; /* occasional counter */ 48 int n; /* occasional counter */
49 int label; /* labeled failure */
50 struct { /* labeled failure */
51 int ps; /* occasional second sibling */
52 int plab; /* occasional label set */
53 } s; /* labeled failure */
51 } u; 54 } u;
52} TTree; 55} TTree;
53 56
@@ -68,7 +71,7 @@ extern const byte numsiblings[];
68 71
69/* access to siblings */ 72/* access to siblings */
70#define sib1(t) ((t) + 1) 73#define sib1(t) ((t) + 1)
71#define sib2(t) ((t) + (t)->u.ps) 74#define sib2(t) ((t) + (t)->u.s.ps)
72 75
73 76
74 77