#ifndef LITE_XL_PLUGIN_API #define LITE_XL_PLUGIN_API /* The lite_xl plugin API is quite simple. Any shared library can be a plugin file, so long as it has an entrypoint that looks like the following, where xxxxx is the plugin name: #include "lite_xl_plugin_api.h" int lua_open_lite_xl_xxxxx(lua_State* L, void* XL) { lite_xl_plugin_init(XL); ... return 1; } In linux, to compile this file, you'd do: 'gcc -o xxxxx.so -shared xxxxx.c'. Simple! Due to the way the API is structured, you *should not* link or include lua libraries. This file was automatically generated by the below code. Do NOT MODIFY DIRECTLY. #!/bin/sh echo "#ifndef LITE_XL_PLUGIN_API" echo "#define LITE_XL_PLUGIN_API" echo "/* " echo "The lite_xl plugin API is quite simple. Any shared library can be a plugin file, so long" echo "as it has an entrypoint that looks like the following, where xxxxx is the plugin name:" echo echo '#include "lite_xl_plugin_api.h"' echo echo "int lua_open_lite_xl_xxxxx(lua_State* L, void* XL) {" echo " lite_xl_plugin_init(XL);" echo " ..." echo " return 1;" echo "}" echo echo "In linux, to compile this file, you'd do: 'gcc -o xxxxx.so -shared xxxxx.c'. Simple!" echo "Due to the way the API is structured, you *should not* link or include lua libraries." echo echo "This file was automatically generated by the below code. Do NOT MODIFY DIRECTLY." echo echo cat $0 echo "*""/" echo "#include " echo "typedef struct lua_State lua_State; typedef double lua_Number; typedef int (*lua_CFunction)(lua_State*); typedef ptrdiff_t lua_Integer;" echo "typedef unsigned long lua_Unsigned; typedef struct luaL_Buffer luaL_Buffer; typedef struct luaL_Reg luaL_Reg; typedef struct lua_Debug lua_Debug;" echo "typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar);" echo "typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize);" echo "typedef int (*lua_Writer) (lua_State *L, const void* p, size_t sz, void* ud);" LUA_HEADERS=`pkg-config --cflags lua5.2 | sed 's/^-I//' | sed 's/$/\/*.h/'` grep -h "^LUA\(LIB\)*_API" $LUA_HEADERS | sed "s/LUA\(LIB\)*_API //" | sed "s/(lua/(*lua/" | grep -v ",\s*$" | sed "s/^/static /" grep -h "#define luaL*_" $LUA_HEADERS | grep -v "\\\s*$" | grep -v "\(assert\|lock\)" | grep -v "\(asm\|int32\)" | grep -v "#define lua_number2integer(i,n)\s*lua_number2int(i, n)" echo "#define lua_pushliteral(L, s) lua_pushlstring(L, "" s, (sizeof(s)/sizeof(char))-1)" echo "#define lua_pushglobaltable(L) lua_rawgeti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS)" echo "#define IMPORT_SYMBOL(name, ret, ...) name = (ret (*)(__VA_ARGS__))symbol(#name)" echo "static void lite_xl_plugin_init(void* XL) {" echo "\tvoid* (*symbol)(const char*) = (void* (*)(const char*))XL;" grep -h "^LUA\(LIB\)*_API" $LUA_HEADERS | sed "s/LUA\(LIB\)*_API //" | sed "s/(lua/(*lua/" | grep -v ",\s*$" | sed "s/^\([^)]*\)(\*\(lua\w*\))\s*(/\tIMPORT_SYMBOL(\2, \1,/" echo "}" echo "#endif" */ #include typedef struct lua_State lua_State; typedef double lua_Number; typedef int (*lua_CFunction)(lua_State*); typedef ptrdiff_t lua_Integer; typedef unsigned long lua_Unsigned; typedef struct luaL_Buffer luaL_Buffer; typedef struct luaL_Reg luaL_Reg; typedef struct lua_Debug lua_Debug; typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar); typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize); typedef int (*lua_Writer) (lua_State *L, const void* p, size_t sz, void* ud); static void (*luaL_checkversion_) (lua_State *L, lua_Number ver); static int (*luaL_getmetafield) (lua_State *L, int obj, const char *e); static int (*luaL_callmeta) (lua_State *L, int obj, const char *e); static const char *(*luaL_tolstring) (lua_State *L, int idx, size_t *len); static int (*luaL_argerror) (lua_State *L, int numarg, const char *extramsg); static lua_Number (*luaL_checknumber) (lua_State *L, int numArg); static lua_Number (*luaL_optnumber) (lua_State *L, int nArg, lua_Number def); static lua_Integer (*luaL_checkinteger) (lua_State *L, int numArg); static lua_Unsigned (*luaL_checkunsigned) (lua_State *L, int numArg); static void (*luaL_checkstack) (lua_State *L, int sz, const char *msg); static void (*luaL_checktype) (lua_State *L, int narg, int t); static void (*luaL_checkany) (lua_State *L, int narg); static int (*luaL_newmetatable) (lua_State *L, const char *tname); static void (*luaL_setmetatable) (lua_State *L, const char *tname); static void *(*luaL_testudata) (lua_State *L, int ud, const char *tname); static void *(*luaL_checkudata) (lua_State *L, int ud, const char *tname); static void (*luaL_where) (lua_State *L, int lvl); static int (*luaL_error) (lua_State *L, const char *fmt, ...); static int (*luaL_fileresult) (lua_State *L, int stat, const char *fname); static int (*luaL_execresult) (lua_State *L, int stat); static int (*luaL_ref) (lua_State *L, int t); static void (*luaL_unref) (lua_State *L, int t, int ref); static int (*luaL_loadstring) (lua_State *L, const char *s); static lua_State *(*luaL_newstate) (void); static int (*luaL_len) (lua_State *L, int idx); static void (*luaL_setfuncs) (lua_State *L, const luaL_Reg *l, int nup); static int (*luaL_getsubtable) (lua_State *L, int idx, const char *fname); static void (*luaL_buffinit) (lua_State *L, luaL_Buffer *B); static char *(*luaL_prepbuffsize) (luaL_Buffer *B, size_t sz); static void (*luaL_addlstring) (luaL_Buffer *B, const char *s, size_t l); static void (*luaL_addstring) (luaL_Buffer *B, const char *s); static void (*luaL_addvalue) (luaL_Buffer *B); static void (*luaL_pushresult) (luaL_Buffer *B); static void (*luaL_pushresultsize) (luaL_Buffer *B, size_t sz); static char *(*luaL_buffinitsize) (lua_State *L, luaL_Buffer *B, size_t sz); static lua_State *(*lua_newstate) (lua_Alloc f, void *ud); static void (*lua_close) (lua_State *L); static lua_State *(*lua_newthread) (lua_State *L); static lua_CFunction (*lua_atpanic) (lua_State *L, lua_CFunction panicf); static const lua_Number *(*lua_version) (lua_State *L); static int (*lua_absindex) (lua_State *L, int idx); static int (*lua_gettop) (lua_State *L); static void (*lua_settop) (lua_State *L, int idx); static void (*lua_pushvalue) (lua_State *L, int idx); static void (*lua_remove) (lua_State *L, int idx); static void (*lua_insert) (lua_State *L, int idx); static void (*lua_replace) (lua_State *L, int idx); static void (*lua_copy) (lua_State *L, int fromidx, int toidx); static int (*lua_checkstack) (lua_State *L, int sz); static void (*lua_xmove) (lua_State *from, lua_State *to, int n); static int (*lua_isnumber) (lua_State *L, int idx); static int (*lua_isstring) (lua_State *L, int idx); static int (*lua_iscfunction) (lua_State *L, int idx); static int (*lua_isuserdata) (lua_State *L, int idx); static int (*lua_type) (lua_State *L, int idx); static const char *(*lua_typename) (lua_State *L, int tp); static lua_Number (*lua_tonumberx) (lua_State *L, int idx, int *isnum); static lua_Integer (*lua_tointegerx) (lua_State *L, int idx, int *isnum); static lua_Unsigned (*lua_tounsignedx) (lua_State *L, int idx, int *isnum); static int (*lua_toboolean) (lua_State *L, int idx); static const char *(*lua_tolstring) (lua_State *L, int idx, size_t *len); static size_t (*lua_rawlen) (lua_State *L, int idx); static lua_CFunction (*lua_tocfunction) (lua_State *L, int idx); static void *(*lua_touserdata) (lua_State *L, int idx); static lua_State *(*lua_tothread) (lua_State *L, int idx); static const void *(*lua_topointer) (lua_State *L, int idx); static void (*lua_arith) (lua_State *L, int op); static int (*lua_rawequal) (lua_State *L, int idx1, int idx2); static int (*lua_compare) (lua_State *L, int idx1, int idx2, int op); static void (*lua_pushnil) (lua_State *L); static void (*lua_pushnumber) (lua_State *L, lua_Number n); static void (*lua_pushinteger) (lua_State *L, lua_Integer n); static void (*lua_pushunsigned) (lua_State *L, lua_Unsigned n); static const char *(*lua_pushlstring) (lua_State *L, const char *s, size_t l); static const char *(*lua_pushstring) (lua_State *L, const char *s); static const char *(*lua_pushfstring) (lua_State *L, const char *fmt, ...); static void (*lua_pushcclosure) (lua_State *L, lua_CFunction fn, int n); static void (*lua_pushboolean) (lua_State *L, int b); static void (*lua_pushlightuserdata) (lua_State *L, void *p); static int (*lua_pushthread) (lua_State *L); static void (*lua_getglobal) (lua_State *L, const char *var); static void (*lua_gettable) (lua_State *L, int idx); static void (*lua_getfield) (lua_State *L, int idx, const char *k); static void (*lua_rawget) (lua_State *L, int idx); static void (*lua_rawgeti) (lua_State *L, int idx, int n); static void (*lua_rawgetp) (lua_State *L, int idx, const void *p); static void (*lua_createtable) (lua_State *L, int narr, int nrec); static void *(*lua_newuserdata) (lua_State *L, size_t sz); static int (*lua_getmetatable) (lua_State *L, int objindex); static void (*lua_getuservalue) (lua_State *L, int idx); static void (*lua_setglobal) (lua_State *L, const char *var); static void (*lua_settable) (lua_State *L, int idx); static void (*lua_setfield) (lua_State *L, int idx, const char *k); static void (*lua_rawset) (lua_State *L, int idx); static void (*lua_rawseti) (lua_State *L, int idx, int n); static void (*lua_rawsetp) (lua_State *L, int idx, const void *p); static int (*lua_setmetatable) (lua_State *L, int objindex); static void (*lua_setuservalue) (lua_State *L, int idx); static int (*lua_getctx) (lua_State *L, int *ctx); static int (*lua_dump) (lua_State *L, lua_Writer writer, void *data); static int (*lua_resume) (lua_State *L, lua_State *from, int narg); static int (*lua_status) (lua_State *L); static int (*lua_gc) (lua_State *L, int what, int data); static int (*lua_error) (lua_State *L); static int (*lua_next) (lua_State *L, int idx); static void (*lua_concat) (lua_State *L, int n); static void (*lua_len) (lua_State *L, int idx); static lua_Alloc (*lua_getallocf) (lua_State *L, void **ud); static void (*lua_setallocf) (lua_State *L, lua_Alloc f, void *ud); static int (*lua_getstack) (lua_State *L, int level, lua_Debug *ar); static int (*lua_getinfo) (lua_State *L, const char *what, lua_Debug *ar); static const char *(*lua_getlocal) (lua_State *L, const lua_Debug *ar, int n); static const char *(*lua_setlocal) (lua_State *L, const lua_Debug *ar, int n); static const char *(*lua_getupvalue) (lua_State *L, int funcindex, int n); static const char *(*lua_setupvalue) (lua_State *L, int funcindex, int n); static void *(*lua_upvalueid) (lua_State *L, int fidx, int n); static int (*lua_sethook) (lua_State *L, lua_Hook func, int mask, int count); static lua_Hook (*lua_gethook) (lua_State *L); static int (*lua_gethookmask) (lua_State *L); static int (*lua_gethookcount) (lua_State *L); static void (*luaL_openlibs) (lua_State *L); #define luaL_checkversion(L) luaL_checkversion_(L, LUA_VERSION_NUM) #define luaL_loadfile(L,f) luaL_loadfilex(L,f,NULL) #define luaL_newlib(L,l) (luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) #define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) #define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) #define luaL_checkint(L,n) ((int)luaL_checkinteger(L, (n))) #define luaL_optint(L,n,d) ((int)luaL_optinteger(L, (n), (d))) #define luaL_checklong(L,n) ((long)luaL_checkinteger(L, (n))) #define luaL_optlong(L,n,d) ((long)luaL_optinteger(L, (n), (d))) #define luaL_typename(L,i) lua_typename(L, lua_type(L,(i))) #define luaL_getmetatable(L,n) (lua_getfield(L, LUA_REGISTRYINDEX, (n))) #define luaL_opt(L,f,n,d) (lua_isnoneornil(L,(n)) ? (d) : f(L,(n))) #define luaL_loadbuffer(L,s,sz,n) luaL_loadbufferx(L,s,sz,n,NULL) #define luaL_addsize(B,s) ((B)->n += (s)) #define luaL_prepbuffer(B) luaL_prepbuffsize(B, LUAL_BUFFERSIZE) #define luaL_register(L,n,l) (luaL_openlib(L,(n),(l),0)) #define lua_h #define lua_upvalueindex(i) (LUA_REGISTRYINDEX - (i)) #define lua_call(L,n,r) lua_callk(L, (n), (r), 0, NULL) #define lua_pcall(L,n,r,f) lua_pcallk(L, (n), (r), (f), 0, NULL) #define lua_yield(L,n) lua_yieldk(L, (n), 0, NULL) #define lua_tonumber(L,i) lua_tonumberx(L,i,NULL) #define lua_tointeger(L,i) lua_tointegerx(L,i,NULL) #define lua_tounsigned(L,i) lua_tounsignedx(L,i,NULL) #define lua_pop(L,n) lua_settop(L, -(n)-1) #define lua_newtable(L) lua_createtable(L, 0, 0) #define lua_register(L,n,f) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n))) #define lua_pushcfunction(L,f) lua_pushcclosure(L, (f), 0) #define lua_isfunction(L,n) (lua_type(L, (n)) == LUA_TFUNCTION) #define lua_istable(L,n) (lua_type(L, (n)) == LUA_TTABLE) #define lua_islightuserdata(L,n) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA) #define lua_isnil(L,n) (lua_type(L, (n)) == LUA_TNIL) #define lua_isboolean(L,n) (lua_type(L, (n)) == LUA_TBOOLEAN) #define lua_isthread(L,n) (lua_type(L, (n)) == LUA_TTHREAD) #define lua_isnone(L,n) (lua_type(L, (n)) == LUA_TNONE) #define lua_isnoneornil(L, n) (lua_type(L, (n)) <= 0) #define lua_tostring(L,i) lua_tolstring(L, (i), NULL) #define lua_strlen(L,i) lua_rawlen(L, (i)) #define lua_objlen(L,i) lua_rawlen(L, (i)) #define lua_equal(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPEQ) #define lua_lessthan(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPLT) #define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n)) #define lua_str2number(s,p) strtod((s), (p)) #define lua_strx2number(s,p) strtod((s), (p)) #define lua_pushliteral(L, s) lua_pushlstring(L, s, (sizeof(s)/sizeof(char))-1) #define lua_pushglobaltable(L) lua_rawgeti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS) #define IMPORT_SYMBOL(name, ret, ...) name = (ret (*)(__VA_ARGS__))symbol(#name) static void lite_xl_plugin_init(void* XL) { void* (*symbol)(const char*) = (void* (*)(const char*))XL; IMPORT_SYMBOL(luaL_checkversion_, void ,lua_State *L, lua_Number ver); IMPORT_SYMBOL(luaL_getmetafield, int ,lua_State *L, int obj, const char *e); IMPORT_SYMBOL(luaL_callmeta, int ,lua_State *L, int obj, const char *e); IMPORT_SYMBOL(luaL_tolstring, const char *,lua_State *L, int idx, size_t *len); IMPORT_SYMBOL(luaL_argerror, int ,lua_State *L, int numarg, const char *extramsg); IMPORT_SYMBOL(luaL_checknumber, lua_Number ,lua_State *L, int numArg); IMPORT_SYMBOL(luaL_optnumber, lua_Number ,lua_State *L, int nArg, lua_Number def); IMPORT_SYMBOL(luaL_checkinteger, lua_Integer ,lua_State *L, int numArg); IMPORT_SYMBOL(luaL_checkunsigned, lua_Unsigned ,lua_State *L, int numArg); IMPORT_SYMBOL(luaL_checkstack, void ,lua_State *L, int sz, const char *msg); IMPORT_SYMBOL(luaL_checktype, void ,lua_State *L, int narg, int t); IMPORT_SYMBOL(luaL_checkany, void ,lua_State *L, int narg); IMPORT_SYMBOL(luaL_newmetatable, int ,lua_State *L, const char *tname); IMPORT_SYMBOL(luaL_setmetatable, void ,lua_State *L, const char *tname); IMPORT_SYMBOL(luaL_testudata, void *,lua_State *L, int ud, const char *tname); IMPORT_SYMBOL(luaL_checkudata, void *,lua_State *L, int ud, const char *tname); IMPORT_SYMBOL(luaL_where, void ,lua_State *L, int lvl); IMPORT_SYMBOL(luaL_error, int ,lua_State *L, const char *fmt, ...); IMPORT_SYMBOL(luaL_fileresult, int ,lua_State *L, int stat, const char *fname); IMPORT_SYMBOL(luaL_execresult, int ,lua_State *L, int stat); IMPORT_SYMBOL(luaL_ref, int ,lua_State *L, int t); IMPORT_SYMBOL(luaL_unref, void ,lua_State *L, int t, int ref); IMPORT_SYMBOL(luaL_loadstring, int ,lua_State *L, const char *s); IMPORT_SYMBOL(luaL_newstate, lua_State *,void); IMPORT_SYMBOL(luaL_len, int ,lua_State *L, int idx); IMPORT_SYMBOL(luaL_setfuncs, void ,lua_State *L, const luaL_Reg *l, int nup); IMPORT_SYMBOL(luaL_getsubtable, int ,lua_State *L, int idx, const char *fname); IMPORT_SYMBOL(luaL_buffinit, void ,lua_State *L, luaL_Buffer *B); IMPORT_SYMBOL(luaL_prepbuffsize, char *,luaL_Buffer *B, size_t sz); IMPORT_SYMBOL(luaL_addlstring, void ,luaL_Buffer *B, const char *s, size_t l); IMPORT_SYMBOL(luaL_addstring, void ,luaL_Buffer *B, const char *s); IMPORT_SYMBOL(luaL_addvalue, void ,luaL_Buffer *B); IMPORT_SYMBOL(luaL_pushresult, void ,luaL_Buffer *B); IMPORT_SYMBOL(luaL_pushresultsize, void ,luaL_Buffer *B, size_t sz); IMPORT_SYMBOL(luaL_buffinitsize, char *,lua_State *L, luaL_Buffer *B, size_t sz); IMPORT_SYMBOL(lua_newstate, lua_State *,lua_Alloc f, void *ud); IMPORT_SYMBOL(lua_close, void ,lua_State *L); IMPORT_SYMBOL(lua_newthread, lua_State *,lua_State *L); IMPORT_SYMBOL(lua_atpanic, lua_CFunction ,lua_State *L, lua_CFunction panicf); IMPORT_SYMBOL(lua_version, const lua_Number *,lua_State *L); IMPORT_SYMBOL(lua_absindex, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_gettop, int ,lua_State *L); IMPORT_SYMBOL(lua_settop, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_pushvalue, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_remove, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_insert, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_replace, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_copy, void ,lua_State *L, int fromidx, int toidx); IMPORT_SYMBOL(lua_checkstack, int ,lua_State *L, int sz); IMPORT_SYMBOL(lua_xmove, void ,lua_State *from, lua_State *to, int n); IMPORT_SYMBOL(lua_isnumber, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_isstring, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_iscfunction, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_isuserdata, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_type, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_typename, const char *,lua_State *L, int tp); IMPORT_SYMBOL(lua_tonumberx, lua_Number ,lua_State *L, int idx, int *isnum); IMPORT_SYMBOL(lua_tointegerx, lua_Integer ,lua_State *L, int idx, int *isnum); IMPORT_SYMBOL(lua_tounsignedx, lua_Unsigned ,lua_State *L, int idx, int *isnum); IMPORT_SYMBOL(lua_toboolean, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_tolstring, const char *,lua_State *L, int idx, size_t *len); IMPORT_SYMBOL(lua_rawlen, size_t ,lua_State *L, int idx); IMPORT_SYMBOL(lua_tocfunction, lua_CFunction ,lua_State *L, int idx); IMPORT_SYMBOL(lua_touserdata, void *,lua_State *L, int idx); IMPORT_SYMBOL(lua_tothread, lua_State *,lua_State *L, int idx); IMPORT_SYMBOL(lua_topointer, const void *,lua_State *L, int idx); IMPORT_SYMBOL(lua_arith, void ,lua_State *L, int op); IMPORT_SYMBOL(lua_rawequal, int ,lua_State *L, int idx1, int idx2); IMPORT_SYMBOL(lua_compare, int ,lua_State *L, int idx1, int idx2, int op); IMPORT_SYMBOL(lua_pushnil, void ,lua_State *L); IMPORT_SYMBOL(lua_pushnumber, void ,lua_State *L, lua_Number n); IMPORT_SYMBOL(lua_pushinteger, void ,lua_State *L, lua_Integer n); IMPORT_SYMBOL(lua_pushunsigned, void ,lua_State *L, lua_Unsigned n); IMPORT_SYMBOL(lua_pushlstring, const char *,lua_State *L, const char *s, size_t l); IMPORT_SYMBOL(lua_pushstring, const char *,lua_State *L, const char *s); IMPORT_SYMBOL(lua_pushfstring, const char *,lua_State *L, const char *fmt, ...); IMPORT_SYMBOL(lua_pushcclosure, void ,lua_State *L, lua_CFunction fn, int n); IMPORT_SYMBOL(lua_pushboolean, void ,lua_State *L, int b); IMPORT_SYMBOL(lua_pushlightuserdata, void ,lua_State *L, void *p); IMPORT_SYMBOL(lua_pushthread, int ,lua_State *L); IMPORT_SYMBOL(lua_getglobal, void ,lua_State *L, const char *var); IMPORT_SYMBOL(lua_gettable, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_getfield, void ,lua_State *L, int idx, const char *k); IMPORT_SYMBOL(lua_rawget, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_rawgeti, void ,lua_State *L, int idx, int n); IMPORT_SYMBOL(lua_rawgetp, void ,lua_State *L, int idx, const void *p); IMPORT_SYMBOL(lua_createtable, void ,lua_State *L, int narr, int nrec); IMPORT_SYMBOL(lua_newuserdata, void *,lua_State *L, size_t sz); IMPORT_SYMBOL(lua_getmetatable, int ,lua_State *L, int objindex); IMPORT_SYMBOL(lua_getuservalue, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_setglobal, void ,lua_State *L, const char *var); IMPORT_SYMBOL(lua_settable, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_setfield, void ,lua_State *L, int idx, const char *k); IMPORT_SYMBOL(lua_rawset, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_rawseti, void ,lua_State *L, int idx, int n); IMPORT_SYMBOL(lua_rawsetp, void ,lua_State *L, int idx, const void *p); IMPORT_SYMBOL(lua_setmetatable, int ,lua_State *L, int objindex); IMPORT_SYMBOL(lua_setuservalue, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_getctx, int ,lua_State *L, int *ctx); IMPORT_SYMBOL(lua_dump, int ,lua_State *L, lua_Writer writer, void *data); IMPORT_SYMBOL(lua_resume, int ,lua_State *L, lua_State *from, int narg); IMPORT_SYMBOL(lua_status, int ,lua_State *L); IMPORT_SYMBOL(lua_gc, int ,lua_State *L, int what, int data); IMPORT_SYMBOL(lua_error, int ,lua_State *L); IMPORT_SYMBOL(lua_next, int ,lua_State *L, int idx); IMPORT_SYMBOL(lua_concat, void ,lua_State *L, int n); IMPORT_SYMBOL(lua_len, void ,lua_State *L, int idx); IMPORT_SYMBOL(lua_getallocf, lua_Alloc ,lua_State *L, void **ud); IMPORT_SYMBOL(lua_setallocf, void ,lua_State *L, lua_Alloc f, void *ud); IMPORT_SYMBOL(lua_getstack, int ,lua_State *L, int level, lua_Debug *ar); IMPORT_SYMBOL(lua_getinfo, int ,lua_State *L, const char *what, lua_Debug *ar); IMPORT_SYMBOL(lua_getlocal, const char *,lua_State *L, const lua_Debug *ar, int n); IMPORT_SYMBOL(lua_setlocal, const char *,lua_State *L, const lua_Debug *ar, int n); IMPORT_SYMBOL(lua_getupvalue, const char *,lua_State *L, int funcindex, int n); IMPORT_SYMBOL(lua_setupvalue, const char *,lua_State *L, int funcindex, int n); IMPORT_SYMBOL(lua_upvalueid, void *,lua_State *L, int fidx, int n); IMPORT_SYMBOL(lua_sethook, int ,lua_State *L, lua_Hook func, int mask, int count); IMPORT_SYMBOL(lua_gethook, lua_Hook ,lua_State *L); IMPORT_SYMBOL(lua_gethookmask, int ,lua_State *L); IMPORT_SYMBOL(lua_gethookcount, int ,lua_State *L); IMPORT_SYMBOL(luaL_openlibs, void ,lua_State *L); } #endif