rpm
4.5
|
00001 /* 00002 ** $Id: ltable.h,v 1.1 2004/03/16 21:58:30 niemeyer Exp $ 00003 ** Lua tables (hash) 00004 ** See Copyright Notice in lua.h 00005 */ 00006 00007 #ifndef ltable_h 00008 #define ltable_h 00009 00010 #include "lobject.h" 00011 00012 00013 #define gnode(t,i) (&(t)->node[i]) 00014 #define gkey(n) (&(n)->i_key) 00015 #define gval(n) (&(n)->i_val) 00016 00017 00018 /*@observer@*/ 00019 const TObject *luaH_getnum (Table *t, int key) 00020 /*@*/; 00021 TObject *luaH_setnum (lua_State *L, Table *t, int key) 00022 /*@modifies L, t @*/; 00023 /*@observer@*/ 00024 const TObject *luaH_getstr (Table *t, TString *key) 00025 /*@*/; 00026 /*@observer@*/ 00027 const TObject *luaH_get (Table *t, const TObject *key) 00028 /*@*/; 00029 TObject *luaH_set (lua_State *L, Table *t, const TObject *key) 00030 /*@modifies L, t @*/; 00031 /*@null@*/ 00032 Table *luaH_new (lua_State *L, int narray, int lnhash) 00033 /*@modifies L @*/; 00034 void luaH_free (lua_State *L, Table *t) 00035 /*@modifies L, t @*/; 00036 int luaH_next (lua_State *L, Table *t, StkId key) 00037 /*@modifies L, key @*/; 00038 00039 /* exported only for debugging */ 00040 Node *luaH_mainposition (const Table *t, const TObject *key) 00041 /*@*/; 00042 00043 00044 #endif