50#define BASIC_STACK_SIZE (2*LUA_MINSTACK)
55#define KGC_EMERGENCY 1
95#define CIST_LUA (1<<0)
96#define CIST_HOOKED (1<<1)
97#define CIST_REENTRY (1<<2)
99#define CIST_YIELDED (1<<3)
100#define CIST_YPCALL (1<<4)
101#define CIST_STAT (1<<5)
102#define CIST_TAIL (1<<6)
103#define CIST_HOOKYIELD (1<<7)
106#define isLua(ci) ((ci)->callstatus & CIST_LUA)
197#define gch(o) (&(o)->gch)
200#define rawgco2ts(o) \
201 check_exp(novariant((o)->gch.tt) == LUA_TSTRING, &((o)->ts))
202#define gco2ts(o) (&rawgco2ts(o)->tsv)
203#define rawgco2u(o) check_exp((o)->gch.tt == LUA_TUSERDATA, &((o)->u))
204#define gco2u(o) (&rawgco2u(o)->uv)
205#define gco2lcl(o) check_exp((o)->gch.tt == LUA_TLCL, &((o)->cl.l))
206#define gco2ccl(o) check_exp((o)->gch.tt == LUA_TCCL, &((o)->cl.c))
208 check_exp(novariant((o)->gch.tt) == LUA_TFUNCTION, &((o)->cl))
209#define gco2t(o) check_exp((o)->gch.tt == LUA_TTABLE, &((o)->h))
210#define gco2p(o) check_exp((o)->gch.tt == LUA_TPROTO, &((o)->p))
211#define gco2uv(o) check_exp((o)->gch.tt == LUA_TUPVAL, &((o)->uv))
212#define gco2th(o) check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th))
215#define obj2gco(v) (cast(GCObject *, (v)))
219#define gettotalbytes(g) ((g)->totalbytes + (g)->GCdebt)
void *(* lua_Alloc)(void *ud, void *ptr, size_t osize, size_t nsize)
int(* lua_CFunction)(lua_State *L)
void(* lua_Hook)(lua_State *L, lua_Debug *ar)
LUAI_FUNC void luaE_freethread(lua_State *L, lua_State *L1)
struct stringtable stringtable
struct global_State global_State
LUAI_FUNC CallInfo * luaE_extendCI(lua_State *L)
LUAI_FUNC void luaE_setdebt(global_State *g, l_mem debt)
LUAI_FUNC void luaE_freeCI(lua_State *L)
struct CallInfo * previous
struct CallInfo::@64::@65 l
const Instruction * savedpc
struct CallInfo::@64::@66 c
struct lua_State * mainthread
struct Table * mt[NUM_TAGS]
const lua_Number * version
struct lua_longjmp * errorJmp
const Instruction * oldpc