commit 41d9ea948c18db38473e353ac7a84bc501f3ce74
parent ee912e5a7f090314915be7b354be5bfa1002ed79
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date: Sun, 12 Jul 1998 13:14:58 -0300
auxiliar functions "luaH_setint" & "luaH_getint".
Diffstat:
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/ltable.c b/ltable.c
@@ -1,5 +1,5 @@
/*
-** $Id: ltable.c,v 1.11 1998/01/13 18:06:27 roberto Exp roberto $
+** $Id: ltable.c,v 1.12 1998/01/28 16:50:33 roberto Exp roberto $
** Lua tables (hash)
** See Copyright Notice in lua.h
*/
@@ -162,7 +162,7 @@ TObject *luaH_get (Hash *t, TObject *ref)
{
int h = present(t, ref);
if (ttype(ref(node(t, h))) != LUA_T_NIL) return val(node(t, h));
- else return NULL;
+ else return &luaO_nilobject;
}
@@ -214,3 +214,20 @@ Node *luaH_next (TObject *o, TObject *r)
return hashnext(t, i+1);
}
}
+
+
+void luaH_setint (Hash *t, int ref, TObject *val) {
+ TObject index;
+ ttype(&index) = LUA_T_NUMBER;
+ nvalue(&index) = ref;
+ *(luaH_set(t, &index)) = *val;
+}
+
+
+TObject *luaH_getint (Hash *t, int ref) {
+ TObject index;
+ ttype(&index) = LUA_T_NUMBER;
+ nvalue(&index) = ref;
+ return luaH_get(t, &index);
+}
+
diff --git a/ltable.h b/ltable.h
@@ -1,5 +1,5 @@
/*
-** $Id: ltable.h,v 1.4 1997/11/19 17:29:23 roberto Exp roberto $
+** $Id: ltable.h,v 1.5 1997/11/26 18:53:45 roberto Exp roberto $
** Lua tables (hash)
** See Copyright Notice in lua.h
*/
@@ -20,5 +20,8 @@ void luaH_free (Hash *frees);
TObject *luaH_get (Hash *t, TObject *ref);
TObject *luaH_set (Hash *t, TObject *ref);
Node *luaH_next (TObject *o, TObject *r);
+void luaH_setint (Hash *t, int ref, TObject *val);
+TObject *luaH_getint (Hash *t, int ref);
+
#endif