diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-04-14 12:04:23 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-04-14 12:04:23 -0300 |
commit | 3f7797419e4d7493e1364290a5b127d1cb45e3bf (patch) | |
tree | 8dd91b0d008d5ea9f9c96eada86510495c97d1e3 /lptree.h | |
parent | d9f83dded93a35fb333c4e1bd371c401f7129fd1 (diff) | |
download | lpeg-3f7797419e4d7493e1364290a5b127d1cb45e3bf.tar.gz lpeg-3f7797419e4d7493e1364290a5b127d1cb45e3bf.tar.bz2 lpeg-3f7797419e4d7493e1364290a5b127d1cb45e3bf.zip |
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.)
Diffstat (limited to 'lptree.h')
-rw-r--r-- | lptree.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -26,8 +26,8 @@ typedef enum TTag { | |||
26 | TCall, /* ktable[key] is rule's key; 'sib2' is rule being called */ | 26 | TCall, /* ktable[key] is rule's key; 'sib2' is rule being called */ |
27 | TOpenCall, /* ktable[key] is rule's key */ | 27 | TOpenCall, /* ktable[key] is rule's key */ |
28 | TRule, /* ktable[key] is rule's key (but key == 0 for unused rules); | 28 | TRule, /* ktable[key] is rule's key (but key == 0 for unused rules); |
29 | 'sib1' is rule's pattern; | 29 | 'sib1' is rule's pattern pre-rule; 'sib2' is next rule; */ |
30 | 'sib2' is next rule; 'cap' is rule's sequential number */ | 30 | TXInfo, /* extra info; 'n' is rule's sequential number */ |
31 | TGrammar, /* 'sib1' is initial (and first) rule */ | 31 | TGrammar, /* 'sib1' is initial (and first) rule */ |
32 | TBehind, /* 'sib1' is pattern, 'n' is how much to go back */ | 32 | TBehind, /* 'sib1' is pattern, 'n' is how much to go back */ |
33 | TCapture, /* captures: 'cap' is kind of capture (enum 'CapKind'); | 33 | TCapture, /* captures: 'cap' is kind of capture (enum 'CapKind'); |