37 "$URL: www.lua.org $\n";
41#define api_checknelems(L, n) api_check(L, (n) <= (L->top - L->base))
43#define api_checkvalidindex(L, i) api_check(L, (i) != luaO_nilobject)
45#define api_incr_top(L) {api_check(L, L->top < L->ci->top); L->top++;}
71 return (idx <= func->c.nupvalues)
112 if (from == to)
return;
118 for (i = 0; i < n; i++) {
134 G(L)->panic = panicf;
185 while (++p < L->top)
setobjs2s(L, p-1, p);
348 if (len !=
NULL) *len = 0;
390 default:
return NULL;
410 default:
return NULL;
524 return (
G(L)->mainthread == L);
593 switch (
ttype(obj)) {
601 mt =
G(L)->mt[
ttype(obj)];
710 switch (
ttype(obj)) {
712 hvalue(obj)->metatable = mt;
718 uvalue(obj)->metatable = mt;
724 G(L)->mt[
ttype(obj)] = mt;
768#define adjustresults(L,nres) \
769 { if (nres == LUA_MULTRET && L->top >= L->ci->top) L->ci->top = L->top; }
772#define checkresults(L,na,nr) \
773 api_check(L, (nr) == LUA_MULTRET || (L->ci->top - L->top >= (nr) - (na)))
781 func = L->
top - (nargs+1);
863 const char *chunkname) {
867 if (!chunkname) chunkname =
"?";
928 if (a <= g->totalbytes)
1010 if (
ud) *
ud =
G(L)->ud;
1044 if (!(1 <= n && n <= f->c.nupvalues))
return NULL;
1050 if (!(1 <= n && n <= p->sizeupvalues))
return NULL;
LUA_API void lua_pushstring(lua_State *L, const char *s)
LUA_API void lua_pushcclosure(lua_State *L, lua_CFunction fn, int n)
LUA_API int lua_setmetatable(lua_State *L, int objindex)
LUA_API void lua_pushnil(lua_State *L)
LUA_API void lua_concat(lua_State *L, int n)
LUA_API void lua_setlevel(lua_State *from, lua_State *to)
LUA_API int lua_dump(lua_State *L, lua_Writer writer, void *data)
#define api_checkvalidindex(L, i)
LUA_API void lua_pushnumber(lua_State *L, lua_Number n)
LUA_API const char * lua_pushfstring(lua_State *L, const char *fmt,...)
LUA_API const char * lua_getupvalue(lua_State *L, int funcindex, int n)
LUA_API int lua_iscfunction(lua_State *L, int idx)
LUA_API lua_Alloc lua_getallocf(lua_State *L, void **ud)
LUA_API void lua_setfield(lua_State *L, int idx, const char *k)
LUA_API int lua_pushthread(lua_State *L)
LUA_API void lua_rawget(lua_State *L, int idx)
LUA_API int lua_toboolean(lua_State *L, int idx)
LUA_API void lua_settable(lua_State *L, int idx)
LUA_API int lua_getmetatable(lua_State *L, int objindex)
static TValue * index2adr(lua_State *L, int idx)
LUA_API void lua_pushboolean(lua_State *L, int b)
LUA_API const char * lua_tolstring(lua_State *L, int idx, size_t *len)
LUA_API void lua_pushvalue(lua_State *L, int idx)
LUA_API int lua_type(lua_State *L, int idx)
#define checkresults(L, na, nr)
LUA_API int lua_error(lua_State *L)
LUA_API void lua_gettable(lua_State *L, int idx)
LUA_API int lua_load(lua_State *L, lua_Reader reader, void *data, const char *chunkname)
void luaA_pushobject(lua_State *L, const TValue *o)
LUA_API void lua_createtable(lua_State *L, int narray, int nrec)
LUA_API const char * lua_pushvfstring(lua_State *L, const char *fmt, va_list argp)
static void f_Ccall(lua_State *L, void *ud)
LUA_API void lua_pushlightuserdata(lua_State *L, void *p)
LUA_API void lua_rawseti(lua_State *L, int idx, int n)
LUA_API lua_CFunction lua_atpanic(lua_State *L, lua_CFunction panicf)
LUA_API lua_State * lua_tothread(lua_State *L, int idx)
#define api_checknelems(L, n)
LUA_API int lua_isnumber(lua_State *L, int idx)
LUA_API lua_State * lua_newthread(lua_State *L)
LUA_API int lua_isstring(lua_State *L, int idx)
LUA_API const void * lua_topointer(lua_State *L, int idx)
LUA_API int lua_isuserdata(lua_State *L, int idx)
LUA_API int lua_next(lua_State *L, int idx)
LUA_API size_t lua_objlen(lua_State *L, int idx)
LUA_API int lua_status(lua_State *L)
LUA_API void lua_getfenv(lua_State *L, int idx)
static const char * aux_upvalue(StkId fi, int n, TValue **val)
static Table * getcurrenv(lua_State *L)
LUA_API void * lua_touserdata(lua_State *L, int idx)
static void f_call(lua_State *L, void *ud)
LUA_API void lua_setallocf(lua_State *L, lua_Alloc f, void *ud)
LUA_API int lua_rawequal(lua_State *L, int index1, int index2)
LUA_API int lua_checkstack(lua_State *L, int size)
LUA_API void lua_pushlstring(lua_State *L, const char *s, size_t len)
LUA_API const char * lua_setupvalue(lua_State *L, int funcindex, int n)
LUA_API void lua_settop(lua_State *L, int idx)
LUA_API void lua_pushinteger(lua_State *L, lua_Integer n)
LUA_API const char * lua_typename(lua_State *L, int t)
LUA_API int lua_lessthan(lua_State *L, int index1, int index2)
LUA_API void lua_xmove(lua_State *from, lua_State *to, int n)
LUA_API void lua_rawgeti(lua_State *L, int idx, int n)
LUA_API void lua_getfield(lua_State *L, int idx, const char *k)
LUA_API lua_CFunction lua_tocfunction(lua_State *L, int idx)
LUA_API int lua_equal(lua_State *L, int index1, int index2)
LUA_API int lua_setfenv(lua_State *L, int idx)
LUA_API int lua_gc(lua_State *L, int what, int data)
LUA_API void lua_rawset(lua_State *L, int idx)
LUA_API int lua_gettop(lua_State *L)
#define adjustresults(L, nres)
LUA_API int lua_cpcall(lua_State *L, lua_CFunction func, void *ud)
void luaG_runerror(lua_State *L, const char *fmt,...)
void luaG_errormsg(lua_State *L)
int luaD_pcall(lua_State *L, Pfunc func, void *u, ptrdiff_t old_top, ptrdiff_t ef)
int luaD_protectedparser(lua_State *L, ZIO *z, const char *name)
void luaD_call(lua_State *L, StkId func, int nResults)
#define luaD_checkstack(L, n)
int luaU_dump(lua_State *L, const Proto *f, lua_Writer w, void *data, int strip)
Closure * luaF_newCclosure(lua_State *L, int nelems, Table *e)
void luaC_fullgc(lua_State *L)
void luaC_step(lua_State *L)
#define luaC_barrier(L, p, v)
#define luaC_objbarriert(L, t, o)
#define luaC_objbarrier(L, p, o)
#define luaC_barriert(L, t, v)
int luaO_rawequalObj(const TValue *t1, const TValue *t2)
const char * luaO_pushvfstring(lua_State *L, const char *fmt, va_list argp)
#define setpvalue(obj, x)
#define setbvalue(obj, x)
#define setsvalue(L, obj, x)
#define ttislightuserdata(o)
#define setnvalue(obj, x)
#define setclvalue(L, obj, x)
#define setthvalue(L, obj, x)
#define setuvalue(L, obj, x)
#define sethvalue(L, obj, x)
#define setobj(L, obj1, obj2)
lua_State * luaE_newthread(lua_State *L)
Udata * luaS_newudata(lua_State *L, size_t s, Table *e)
TString * luaS_newlstr(lua_State *L, const char *str, size_t l)
static int writer(lua_State *L, const void *b, size_t size, void *B)
const TValue * luaH_get(Table *t, const TValue *key)
TValue * luaH_setnum(lua_State *L, Table *t, int key)
Table * luaH_new(lua_State *L, int narray, int nhash)
const TValue * luaH_getnum(Table *t, int key)
int luaH_next(lua_State *L, Table *t, StkId key)
TValue * luaH_set(lua_State *L, Table *t, const TValue *key)
const char *const luaT_typenames[]
const char *(* lua_Reader)(lua_State *L, void *ud, size_t *sz)
void *(* lua_Alloc)(void *ud, void *ptr, size_t osize, size_t nsize)
#define LUA_REGISTRYINDEX
int(* lua_Writer)(lua_State *L, const void *p, size_t sz, void *ud)
int(* lua_CFunction)(lua_State *L)
#define LUA_TLIGHTUSERDATA
#define lua_number2integer(i, d)
#define luai_userstatethread(L, L1)
void luaV_concat(lua_State *L, int total, int last)
int luaV_lessthan(lua_State *L, const TValue *l, const TValue *r)
int luaV_tostring(lua_State *L, StkId obj)
#define equalobj(L, o1, o2)
void luaZ_init(lua_State *L, ZIO *z, lua_Reader reader, void *data)
#define lua_tointeger(L, i)
#define lua_tonumber(L, i)
#define lua_pcall(L, n, r, f)
#define lua_call(L, n, r)
static const char * reader(lua_State *L, void *ud, size_t *size)
#define lua_replace(L, idx)
#define lua_insert(L, idx)
#define lua_remove(L, idx)
#define luaV_gettable(L, t, k, v)
#define luaV_settable(L, t, k, v)
#define lua_newuserdata(L, s)
CURL_EXTERN CURLMcode curl_socket_t s