minigame-tuanjie-transform-sdk/Runtime/Plugins/LuaAdaptor/lua_adaptor_comm.c

30 lines
1.1 KiB
C
Raw Permalink Normal View History

2025-01-07 20:59:25 +08:00
#include "lua_adaptor_import.h"
2025-03-17 19:23:46 +08:00
#include <emscripten/emscripten.h>
2025-01-07 20:59:25 +08:00
lua_Debug* lua_newdebugar() { return malloc(sizeof(lua_Debug)); }
void lua_deletedebugar(lua_Debug* ar) { return free(ar); }
const char* lua_Debug_getname(lua_Debug* ar) { return ar->name; }
char* lua_Debug_getshortsrc(lua_Debug* ar) { return ar->short_src; }
int lua_Debug_getevent(lua_Debug* ar) { return ar->event; }
int lua_Debug_getlinedefined(lua_Debug* ar) { return ar->linedefined; }
int lua_Debug_getlastlinedefined(lua_Debug* ar) { return ar->lastlinedefined; }
int lua_get_registry_index() { return LUA_REGISTRYINDEX; }
double lua_todouble(lua_State *L, int idx) { return (double)lua_tonumber(L, idx); }
lua_State* lua_State_getmainthread(lua_State* L) { return G(L)->mainthread; }
void (lua_do_sethook) (lua_State *L, lua_Hook func, int mask, int count) {
lua_sethook(L, func, mask, count);
}
2025-03-17 19:23:46 +08:00
extern void SetLuaState(lua_State* L);
EMSCRIPTEN_KEEPALIVE lua_State* invoke_lua_newstate_with_wx_perf_callback(lua_Alloc f, void *ud) {
lua_State* L;
L = lua_newstate(f, ud);
SetLuaState(L);
return L;
}