我正在为Lua编写C函数.我有很多电话,如lua_gettable,lua_touserdata等
我的C函数可能会接收复杂的结构,例如表格作为字段.
我很难对堆叠机器进行编程.
有没有办法编写将转换为C代码的Lua脚本.
或者其他一些工具可以帮助我为lua脚本编写这样的C函数.
谢谢.
PS
这是一个例子: -
local data = {}
data.x = {}
data.x.y = 1
myCfunc(data)
Run Code Online (Sandbox Code Playgroud)
int myCfunc(lua_State * L){
lua_pushstring(L, "x");
lua_gettable(L, 2);
lua_pushstring(L, "y");
lua_gettable(L, -2);
double y = lua_tonumber(L, -1);
lua_pop(L, 2);
}
Run Code Online (Sandbox Code Playgroud)
代替
function myCfunc(data)
y = data.x.y
end
Run Code Online (Sandbox Code Playgroud)
我真正的代码要复杂得多,我正在寻找一些可以帮助我的自动代码生成.