00001
00002
00003
00004
00005
00006
00007 #ifndef lvm_h
00008 #define lvm_h
00009
00010
00011 #include "ldo.h"
00012 #include "lobject.h"
00013 #include "ltm.h"
00014
00015
00016 #define tostring(L,o) ((ttype(o) == LUA_TSTRING) || (luaV_tostring(L, o)))
00017
00018 #define tonumber(o,n) (ttype(o) == LUA_TNUMBER || \
00019 (((o) = luaV_tonumber(o,n)) != NULL))
00020
00021 #define equalobj(L,o1,o2) \
00022 (ttype(o1) == ttype(o2) && luaV_equalval(L, o1, o2))
00023
00024
00025 int luaV_lessthan (lua_State *L, const TObject *l, const TObject *r)
00026 ;
00027 int luaV_equalval (lua_State *L, const TObject *t1, const TObject *t2)
00028 ;
00029
00030 const TObject *luaV_tonumber (const TObject *obj, TObject *n)
00031 ;
00032 int luaV_tostring (lua_State *L, StkId obj)
00033 ;
00034
00035 const TObject *luaV_gettable (lua_State *L, const TObject *t, TObject *key,
00036 int loop)
00037 ;
00038 void luaV_settable (lua_State *L, const TObject *t, TObject *key, StkId val)
00039 ;
00040
00041 StkId luaV_execute (lua_State *L)
00042 ;
00043 void luaV_concat (lua_State *L, int total, int last)
00044 ;
00045
00046 #endif