| 1 | /* | 
|---|
| 2 | ** $Id: lvm.h,v 2.5.1.1 2007/12/27 13:02:25 roberto Exp $ | 
|---|
| 3 | ** Lua virtual machine | 
|---|
| 4 | ** See Copyright Notice in lua.h | 
|---|
| 5 | */ | 
|---|
| 6 |  | 
|---|
| 7 | #ifndef lvm_h | 
|---|
| 8 | #define lvm_h | 
|---|
| 9 |  | 
|---|
| 10 |  | 
|---|
| 11 | #include "ldo.h" | 
|---|
| 12 | #include "lobject.h" | 
|---|
| 13 | #include "ltm.h" | 
|---|
| 14 |  | 
|---|
| 15 |  | 
|---|
| 16 | #define tostring(L,o) ((ttype(o) == LUA_TSTRING) || (luaV_tostring(L, o))) | 
|---|
| 17 |  | 
|---|
| 18 | #define tonumber(o,n)   (ttype(o) == LUA_TNUMBER || \ | 
|---|
| 19 | (((o) = luaV_tonumber(o,n)) != NULL)) | 
|---|
| 20 |  | 
|---|
| 21 | #define equalobj(L,o1,o2) \ | 
|---|
| 22 | (ttype(o1) == ttype(o2) && luaV_equalval(L, o1, o2)) | 
|---|
| 23 |  | 
|---|
| 24 |  | 
|---|
| 25 | LUAI_FUNC int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r); | 
|---|
| 26 | LUAI_FUNC int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2); | 
|---|
| 27 | LUAI_FUNC const TValue *luaV_tonumber (const TValue *obj, TValue *n); | 
|---|
| 28 | LUAI_FUNC int luaV_tostring (lua_State *L, StkId obj); | 
|---|
| 29 | LUAI_FUNC void luaV_gettable (lua_State *L, const TValue *t, TValue *key, | 
|---|
| 30 | StkId val); | 
|---|
| 31 | LUAI_FUNC void luaV_settable (lua_State *L, const TValue *t, TValue *key, | 
|---|
| 32 | StkId val); | 
|---|
| 33 | LUAI_FUNC void luaV_execute (lua_State *L, int nexeccalls); | 
|---|
| 34 | LUAI_FUNC void luaV_concat (lua_State *L, int total, int last); | 
|---|
| 35 |  | 
|---|
| 36 | #endif | 
|---|