summaryrefslogtreecommitdiff
path: root/lstring.h
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>1999-10-11 14:13:42 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>1999-10-11 14:13:42 -0200
commitc5fee7615e979e3a39af44614f82938519dedb68 (patch)
tree831ad8d88aba1d15e6337838d11e0234bd2e96d6 /lstring.h
parentcca78b5c71f4def3d3d80c71f690f8380b3cb35e (diff)
downloadlua-github-c5fee7615e979e3a39af44614f82938519dedb68.tar.gz
new implementation for string hashing, with chaining.
Diffstat (limited to 'lstring.h')
-rw-r--r--lstring.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/lstring.h b/lstring.h
index 7fc50810..c1323808 100644
--- a/lstring.h
+++ b/lstring.h
@@ -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);