1 /*
2 ** Lua virtual machine
3 ** See Copyright Notice in lua.h
4 */
5 
6 #ifndef GRIM_LVM_H
7 #define GRIM_LVM_H
8 
9 
10 #include "engines/grim/lua/ldo.h"
11 #include "engines/grim/lua/lobject.h"
12 
13 namespace Grim {
14 
15 #define tonumber(o) ((ttype(o) != LUA_T_NUMBER) && (luaV_tonumber(o) != 0))
16 #define tostring(o) ((ttype(o) != LUA_T_STRING) && (luaV_tostring(o) != 0))
17 
18 
19 void luaV_pack(StkId firstel, int32 nvararg, TObject *tab);
20 int32 luaV_tonumber(TObject *obj);
21 int32 luaV_tostring(TObject *obj);
22 void luaV_gettable();
23 void luaV_settable(TObject *t, int32 mode);
24 void luaV_getglobal(TaggedString *ts);
25 void luaV_setglobal(TaggedString *ts);
26 void luaV_closure(int32 nelems);
27 
28 } // end of namespace Grim
29 
30 #endif
31