diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1999-10-11 14:13:42 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1999-10-11 14:13:42 -0200 |
commit | c5fee7615e979e3a39af44614f82938519dedb68 (patch) | |
tree | 831ad8d88aba1d15e6337838d11e0234bd2e96d6 /lstring.h | |
parent | cca78b5c71f4def3d3d80c71f690f8380b3cb35e (diff) | |
download | lua-github-c5fee7615e979e3a39af44614f82938519dedb68.tar.gz |
new implementation for string hashing, with chaining.
Diffstat (limited to 'lstring.h')
-rw-r--r-- | lstring.h | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -1,5 +1,5 @@ /* -** $Id: lstring.h,v 1.8 1999/08/16 20:52:00 roberto Exp roberto $ +** $Id: lstring.h,v 1.9 1999/10/04 17:51:04 roberto Exp roberto $ ** String table (keep all strings handled by Lua) ** See Copyright Notice in lua.h */ @@ -11,12 +11,18 @@ #include "lobject.h" -#define NUM_HASHSTR 31 -#define NUM_HASHUDATA 31 +#define NUM_HASHSTR 31 /* a prime not in array `dimensions' */ +#define NUM_HASHUDATA 31 /* idem */ #define NUM_HASHS (NUM_HASHSTR+NUM_HASHUDATA) -extern TaggedString luaS_EMPTY; +/* +** any taggedstring with mark>=FIXMARK is never collected. +** Marks>=RESERVEDMARK are used to identify reserved words. +*/ +#define FIXMARK 2 +#define RESERVEDMARK 3 + void luaS_init (void); TaggedString *luaS_createudata (void *udata, int tag); |