diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2023-04-27 15:22:06 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2023-04-27 15:22:06 -0300 |
commit | 503126fec29117e31d633b81203f887b99040c4a (patch) | |
tree | a5b287e10955c12e82b0dfb2a81fdc579e3f0b36 /lptree.h | |
parent | 97a4ca3b4078f581cdc8cebc4fa4cf39d5ff8125 (diff) | |
download | lpeg-503126fec29117e31d633b81203f887b99040c4a.tar.gz lpeg-503126fec29117e31d633b81203f887b99040c4a.tar.bz2 lpeg-503126fec29117e31d633b81203f887b99040c4a.zip |
Small optimization in size of charset trees
Got a byte that was wasted for padding to be used in the bitmap.
Diffstat (limited to 'lptree.h')
-rw-r--r-- | lptree.h | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -56,11 +56,16 @@ typedef struct TTree { | |||
56 | byte offset; /* compact set offset (in bytes) */ | 56 | byte offset; /* compact set offset (in bytes) */ |
57 | byte size; /* compact set size (in bytes) */ | 57 | byte size; /* compact set size (in bytes) */ |
58 | byte deflt; /* default value */ | 58 | byte deflt; /* default value */ |
59 | byte bitmap[1]; /* bitmap (open array) */ | ||
59 | } set; /* for compact sets */ | 60 | } set; /* for compact sets */ |
60 | } u; | 61 | } u; |
61 | } TTree; | 62 | } TTree; |
62 | 63 | ||
63 | 64 | ||
65 | /* access to charset */ | ||
66 | #define treebuffer(t) ((t)->u.set.bitmap) | ||
67 | |||
68 | |||
64 | /* | 69 | /* |
65 | ** A complete pattern has its tree plus, if already compiled, | 70 | ** A complete pattern has its tree plus, if already compiled, |
66 | ** its corresponding code | 71 | ** its corresponding code |