From 3f7797419e4d7493e1364290a5b127d1cb45e3bf Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Sun, 14 Apr 2019 12:04:23 -0300 Subject: Removed 'unsigned char' limit on number of rules in grammars Added a new tree-type node 'TXInfo', which follows 'TRule' nodes, to store extra information about a node. (In this case, the rule number, with an 'unsigned short' field.) --- lptree.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lptree.h') diff --git a/lptree.h b/lptree.h index 25906d5..3e8b52b 100644 --- a/lptree.h +++ b/lptree.h @@ -26,8 +26,8 @@ typedef enum TTag { TCall, /* ktable[key] is rule's key; 'sib2' is rule being called */ TOpenCall, /* ktable[key] is rule's key */ TRule, /* ktable[key] is rule's key (but key == 0 for unused rules); - 'sib1' is rule's pattern; - 'sib2' is next rule; 'cap' is rule's sequential number */ + 'sib1' is rule's pattern pre-rule; 'sib2' is next rule; */ + TXInfo, /* extra info; 'n' is rule's sequential number */ TGrammar, /* 'sib1' is initial (and first) rule */ TBehind, /* 'sib1' is pattern, 'n' is how much to go back */ TCapture, /* captures: 'cap' is kind of capture (enum 'CapKind'); -- cgit v1.2.3-55-g6feb