Mercurial > vba-clojure
view src/lua/ldo.h @ 280:d5e5c73af7e6
reorginazed save corruption code
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Tue, 27 Mar 2012 21:08:44 -0500 |
parents | 27763b933818 |
children |
line wrap: on
line source
1 /*2 ** $Id: ldo.h,v 2.7.1.1 2007/12/27 13:02:25 roberto Exp $3 ** Stack and Call structure of Lua4 ** See Copyright Notice in lua.h5 */7 #ifndef ldo_h8 #define ldo_h11 #include "lobject.h"12 #include "lstate.h"13 #include "lzio.h"16 #define luaD_checkstack(L,n) \17 if ((char *)L->stack_last - (char *)L->top <= (n)*(int)sizeof(TValue)) \18 luaD_growstack(L, n); \19 else condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1));22 #define incr_top(L) {luaD_checkstack(L,1); L->top++;}24 #define savestack(L,p) ((char *)(p) - (char *)L->stack)25 #define restorestack(L,n) ((TValue *)((char *)L->stack + (n)))27 #define saveci(L,p) ((char *)(p) - (char *)L->base_ci)28 #define restoreci(L,n) ((CallInfo *)((char *)L->base_ci + (n)))31 /* results from luaD_precall */32 #define PCRLUA 0 /* initiated a call to a Lua function */33 #define PCRC 1 /* did a call to a C function */34 #define PCRYIELD 2 /* C funtion yielded */37 /* type of protected functions, to be ran by `runprotected' */38 typedef void (*Pfunc) (lua_State *L, void *ud);40 LUAI_FUNC int luaD_protectedparser (lua_State *L, ZIO *z, const char *name);41 LUAI_FUNC void luaD_callhook (lua_State *L, int event, int line);42 LUAI_FUNC int luaD_precall (lua_State *L, StkId func, int nresults);43 LUAI_FUNC void luaD_call (lua_State *L, StkId func, int nResults);44 LUAI_FUNC int luaD_pcall (lua_State *L, Pfunc func, void *u,45 ptrdiff_t oldtop, ptrdiff_t ef);46 LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult);47 LUAI_FUNC void luaD_reallocCI (lua_State *L, int newsize);48 LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize);49 LUAI_FUNC void luaD_growstack (lua_State *L, int n);51 LUAI_FUNC void luaD_throw (lua_State *L, int errcode);52 LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud);54 LUAI_FUNC void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop);56 #endif