aboutsummaryrefslogtreecommitdiff
path: root/lptypes.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2023-04-27 15:22:06 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2023-04-27 15:22:06 -0300
commit503126fec29117e31d633b81203f887b99040c4a (patch)
treea5b287e10955c12e82b0dfb2a81fdc579e3f0b36 /lptypes.h
parent97a4ca3b4078f581cdc8cebc4fa4cf39d5ff8125 (diff)
downloadlpeg-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 'lptypes.h')
-rw-r--r--lptypes.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/lptypes.h b/lptypes.h
index 17d406e..e10d88b 100644
--- a/lptypes.h
+++ b/lptypes.h
@@ -101,11 +101,8 @@ typedef struct Charset {
101#define fillset(s,c) memset(s,c,CHARSETSIZE) 101#define fillset(s,c) memset(s,c,CHARSETSIZE)
102#define clearset(s) fillset(s,0) 102#define clearset(s) fillset(s,0)
103 103
104/* access to charset */
105#define treebuffer(t) ((byte *)((t) + 1))
106
107/* number of slots needed for 'n' bytes */ 104/* number of slots needed for 'n' bytes */
108#define bytes2slots(n) (((n) - 1) / sizeof(TTree) + 1) 105#define bytes2slots(n) (((n) - 1u) / (unsigned int)sizeof(TTree) + 1u)
109 106
110/* set 'b' bit in charset 'cs' */ 107/* set 'b' bit in charset 'cs' */
111#define setchar(cs,b) ((cs)[(b) >> 3] |= (1 << ((b) & 7))) 108#define setchar(cs,b) ((cs)[(b) >> 3] |= (1 << ((b) & 7)))